Mysql
 sql >> Baza danych >  >> RDS >> Mysql

Data jest wstawiana jako 0000-00-00 00:00:00 w mysql

Jesteś na dobrej drodze ze swoją date('Y-m-d H:i:s',$date); rozwiązanie, ale funkcja date() przyjmuje jako drugi argument znacznik czasu, a nie datę.

Zakładam, że twoje przykłady są w amerykańskim formacie daty, bo tak wyglądają. Możesz to zrobić i powinno to zapewnić wartości, których szukasz:

date('Y-m-d H:i:s', strtotime($date));

Powodem, dla którego nie działa, jest to, że oczekuje daty w formacie RRRR-MM-DD i próbuje tak ocenić Twoje dane. Ale masz MM/DD/RR, co go myli. Przykład 06/11/10 jest jedynym, który można zinterpretować jako prawidłową datę RRRR-MM-DD z twoich przykładów, ale PHP uważa, że ​​masz na myśli 06 jako rok, 11 jako miesiąc i 10 jako dzień.



  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Scal datę z jednej daty i godziny z innej daty i godziny

  2. Dołączenie lewe przy użyciu kryteriów hibernacji

  3. Weryfikacja nie powiodła się dla zapytania dla metody JPQL

  4. Mysql FROM_UNIXTIME jako UTC

  5. uzyskiwanie mysql_insert_id() podczas używania ON DUPLICATE KEY UPDATE w PHP