Mysql
 sql >> база данни >  >> RDS >> Mysql

MySQL преобразува стойностите на моите времеви марки в 0000-00-00

Това се случва доста често.
Вие бъркате mysql timestamp, който всъщност е стойност, подобна на DATETIME, с клеймото за време в UNIX, което е броят секунди, изминали от 1970-01-01.

Трябва или да промените формата на полето, или стойността за вмъкване.
Също така можете да намерите някои функции на mysql удобни - CURDATE() или NOW () например

$sql = 'INSERT INTO users VALUES (NULL,:username,:password,:email,NOW(),NOW())';
$stmt = $pdo->prepare($sql);
$stmt->execute(array($username, $password, $email));

Но лично аз бих избягвал mysql timestamps. те могат да бъдат променени неочаквано, разрушавайки всичките ви данни. Бих използвал DATETIME и задайте всички стойности ръчно.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. nodejs mysql Грешка:Връзката е изгубена Сървърът затвори връзката

  2. PHP - Защитени страници само за членове със система за вход

  3. Сценарии за архивиране и възстановяване на MySQL в облак с помощта на Microsoft Azure

  4. Dump файл MySQL 5.6.10

  5. Атомни ли са mysql множество вмъквания в рамките на една заявка?