«Если рабочий хочет хорошо выполнять свою работу, он должен сначала заточить свои инструменты» — Конфуций, «Аналитики Конфуция. Лу Лингун»
титульная страница > программирование > Почему я получаю «Неверное значение по умолчанию для поля create_date» в MySQL и как это исправить?

Почему я получаю «Неверное значение по умолчанию для поля create_date» в MySQL и как это исправить?

Опубликовано 21 ноября 2024 г.
Просматривать:904

Why Am I Getting \

"Недопустимое значение по умолчанию для поля 'create_date': общие сведения о режиме SQL NO_ZERO_DATE"

В недавнем операторе создания SQL вы столкнулись с ошибкой «Неверное значение по умолчанию для 'create_date'» для следующего SQL:

CREATE  TABLE IF NOT EXISTS `erp`.`je_menus` (
    ...
    `create_date` TIMESTAMP NOT NULL DEFAULT  '0000-00-00 00:00:00',
    ...
) 

Чтобы устранить эту ошибку, важно понимать режим MySQL SQL, в частности настройку NO_ZERO_DATE. Этот параметр запрещает использование «0000-00-00» в качестве действительной даты в строгом режиме. Это происходит потому, что SQL обрабатывает логические значения как числа (например, TRUE = 1, FALSE = 0) и сохраняет даты как целые числа, представляющие количество дней, прошедших с контрольной точки. Следовательно, использование «0000-00-00» конфликтует со значением «0», используемым для логических значений.

Чтобы решить эту проблему, рассмотрите следующие варианты:

  • Отключите режим NO_ZERO_DATE: В операторе SQL включите оператор «SET SQL_MODE = «NO_ZERO_IN_DATE»;' перед созданием таблицы. Это временно отключает режим NO_ZERO_DATE, позволяя вам определить '0000-00-00' как значение по умолчанию для create_date.
  • Используйте допустимое значение по умолчанию: Замените '0000-00-00 00 :00:00» с допустимой датой по умолчанию в операторе SQL, например «CURRENT_TIMESTAMP» или NULL, в зависимости от желаемого поведение.
  • Используйте параметр IGNORE: Если вам абсолютно необходимо использовать '0000-00-00 00:00:00', включите параметр IGNORE в оператор SQL. Однако это может привести к потенциальным несоответствиям данных и обычно не рекомендуется.
Последний учебник Более>

Изучайте китайский

Отказ от ответственности: Все предоставленные ресурсы частично взяты из Интернета. В случае нарушения ваших авторских прав или других прав и интересов, пожалуйста, объясните подробные причины и предоставьте доказательства авторских прав или прав и интересов, а затем отправьте их по электронной почте: [email protected]. Мы сделаем это за вас как можно скорее.

Copyright© 2022 湘ICP备2022001581号-3