webentwicklung-frage-antwort-db.com.de

# 1292 - Falscher Datumswert: '0000-00-00'

Ich habe auf viele Fragen verwiesen, die den gleichen Titel wie ich haben, aber einen anderen Ansatz und ein anderes Thema haben, so dass diese Frage kein Duplikat ist.

Ich habe eine Tabelle, in der columnfm_sctrdate Ein date -Typ ist und den Standardwert 0000-00-00 Hat.

enter image description here

Das Einfügen von Webseiten funktioniert einwandfrei, aber wenn ich versuche, einen Wert von phpmyadmin einzufügen, erhalte ich folgende Fehlermeldung.

enter image description here

Mysql Version ist 5.7.11. In letzter Zeit wurde unser Server von mysqlnd 5.0.12 Auf 5.7.11 Aktualisiert.

Hier ist die Abfrage

INSERT INTO `iavlif_fmp_clientquote` (`jm_cqid`, `fmsq_id`, `fmsg_id`, 
`fm_sctrdate`, `fm_sctrtime`, `fm_sctbaggage_weight`,     
`fm_sctfreight_weight`, `fm_sctpassenger`, `fm_sctinfant`, 
`fm_sctinfant_details`, `fm_sctinfant_dob`, `fmtp_id`, `fmtpi_id`,
`jmcnt_id`, `fm_name`, `fm_company`, `fm_email`, `fm_phone`, `fmts_id`,
`jmts_id`, `fm_pax_nbr`, `fm_hours_nbr`, `fmqt_id`, `fmtr_id`,
`fm_sctnotes`, `fm_locdepart`, `fm_locarrive`, `fm_sctconsignment_weight`,
`fm_sctconsignment_dimensions`, `fm_sctconsignment_desc`, `fm_sctdangerous`,
`fm_scturgent`, `fm_sctspecial_instructions`, `fm_sctquote_type`,
`fm_sctwork_type`, `fm_sctreoccuring`, `fm_sctaccommodation`, `fm_sctcar`,
`fm_recdate`, `fm_recenddate`, `fm_recfrequency`, `fm_rectime`,    
`fm_medical`, `fm_medical_details`, `fm_user_ip`, `fm_dang_details`,
`fm_sctsubstance`, `fm_sctpurchase_number`, `fm_role_id`, `fm_myrole_id`,
`jm_myrole_id`, `fm_sctwork_point`, `fm_locdepartarrive`, `fm_sctnbr`, 
`fm_dateCreated`, `fm_cc`, `fm_gl`, `fm_timeCreated`, `jm_qtid`, `jmtp_id`,
`jmtpi_id`, `jmsg_id`, `jms_id`, `jmsq_id`, `fms_id`, `fmcq_id`) VALUES
(NULL, '1', '1', '0000-00-00', '1', '1', '1', 'sdfasd', 'No',
'sdafdsafdsaf', 'dsfas', 'sdfasd', 'dsafds', '0', 'asdfds', 'sdfasd',
'sdfads', 'sdaf', 'sdaf', 'sdaf', '0', '0', '0', '1sadfasdsda', 'sdfadsf',
'as', 'as', 'as', 'asas', 'asd', 'No', 'No', 'adsfsd', 'eqwrqew', 'qewrqew',
'No', 'No', 'No', '0000-00-00', '0000-00-00', 'ewqr', 'qewrw', 'No', 'eqwr',
'ewqr', 'qewr', '', '', '', '', '', '', '', '0', '0000-00-00', '', '',
'00:00:00.000000', '', '', '', '', '', '', '', NULL)

Dieses Problem trat unmittelbar nach dem Upgrade von mysql auf.

23
urfusion

Der Fehler ist auf den SQL-Modus zurückzuführen, der gemäß der neuesten MYSQL 5.7-Dokumentation streng sein kann.

Weitere Informationen finden Sie unter this.

Ich hoffe es hilft.

39
KuKeC

Sie haben 3 Möglichkeiten, sich zurechtzufinden:
1. Definiere einen Datumswert wie '1970-01-01'
2. Wählen Sie in der Dropdown-Liste NULL aus, um das Feld leer zu lassen.
3. Wählen Sie CURRENT_TIMESTAMP, um die aktuelle Datumszeit als Standardwert festzulegen.

13
Amit Garg

@ user2823136, du irrst dich.

Nachdem MYSQL 5.7-Änderungen überprüft wurden, unterstützt MYSQL keine Nullen mehr in Datum/Uhrzeit.

Es ist nicht korrekt, Nullen in Datum oder Datum/Uhrzeit zu verwenden. Setzen Sie statt Nullen einfach Null.

Vielen Dank

12
TomerM