Mysql
 sql >> Teknologi Basis Data >  >> RDS >> Mysql

Nilai DateTime Salah '0000-00-00 00:00:00' - Date_Sub() dalam Memiliki

Opsi pertama:

Peringatan ini mungkin disebabkan oleh SQL_MODE .

Menurut dokumentasi mysql "Jika mode SQL NO_ZERO_DATE atau NO_ZERO_IN_DATE diaktifkan, nol tanggal atau bagian dari tanggal tidak diizinkan.". Jadi ini mungkin penyebab INSERT Anda dengan '0000-00-00 00:00:00' gagal.

Anda dapat memeriksa mode sql Anda dengan menjalankan ini:

SELECT @@sql_mode;

dan jika salah satu dari NO_ZERO_DATE atau NO_ZERO_IN_DATE diatur, maka Anda cukup:

SET sql_mode = '';

Opsi kedua

Opsi lainnya adalah gagal karena STRICT_TRANS_TABLES mode.Seperti yang dikatakan dokumentasi mysql:

Hal yang sama berlaku untuk datetime.

Jadi, Anda harus menonaktifkan STRICT MODE ATAU jika menonaktifkannya bukan pilihan - ubah kueri agar tidak mengembalikan hasil tanggal/tanggal yang tidak valid



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Tabel pembaruan MySQL berdasarkan nilai tabel lain

  2. './mysql/user.MYD' tidak ditemukan (Errcode:2 - Tidak ada file atau direktori seperti itu)

  3. di mana dalam klausa mysql

  4. Cara Menyebarkan MySQL di Ubuntu dan Dikelola Sepenuhnya

  5. Terhubung ke database mysql melalui SSH melalui PHP