Mysql
 sql >> Cơ Sở Dữ Liệu >  >> RDS >> Mysql

MySQL đang chuyển đổi các giá trị dấu thời gian của tôi thành 0000-00-00

Điều đó xảy ra khá thường xuyên.
Bạn đang nhầm lẫn với dấu thời gian mysql thực ra là một giá trị giống DATETIME với dấu thời gian UNIX, là số giây đã trôi qua kể từ năm 1970-01-01.

Bạn cần thay đổi định dạng trường hoặc giá trị chèn.
Ngoài ra, bạn có thể tìm thấy một số hàm mysql hữu ích - ví dụ:CURDATE () hoặc NOW ()

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

Nhưng cá nhân tôi muốn tránh các dấu thời gian mysql. chúng có thể bị thay đổi bất ngờ, làm hỏng tất cả dữ liệu của bạn. Tôi sẽ sử dụng DATETIME và đặt tất cả các giá trị theo cách thủ công.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Thứ tự MySQL theo chuỗi với số

  2. Xóa nhiều hàng bằng cách chọn hộp kiểm sử dụng PHP

  3. Truy vấn cơ sở dữ liệu MySQL từ Hàm NodeJS AWS Lambda

  4. Xóa dữ liệu khỏi mysql và angle

  5. Tạo một bảng tạm thời với ngày tháng