Дата изменения таблицы Mysql не равна нулю

Я хочу обновить свою базу данных (с уже данными в ней) и добавить столбец в таблицу

Этот новый столбец представляет собой дату, и я не хочу, чтобы он был нулевым или имел значение по умолчанию.

Поскольку у меня уже есть данные в базе данных, mysql не позволит мне вставить ненулевые данные, поэтому я пытаюсь вставить столбец с нулевым значением, вставить все мои данные, а затем установить его не нулевым, как так

ALTER TABLE `Test`.`rct` 
ADD COLUMN `dte` DATE NULL AFTER `id`;

--Insert logic here, and now every single rows has a value

ALTER TABLE `Test`.`rct` 
MODIFY `dte` DATE NOT NULL AFTER `id`;

Но когда я это делаю, я получаю эту ошибку: Неверное значение даты: «0000-00-00» для столбца

Но проверяю, и перепроверяю, нигде нет значения 0000-00-00

Итак, как я могу установить для этого столбца значение null, не устанавливая для него значение по умолчанию?

Спасибо.


person Etienne    schedule 12.02.2014    source источник


Ответы (1)


Итак, если я по какой-то причине не изменю позицию (после id), она будет работать!

ALTER TABLE `Test`.`rct` 
MODIFY `dte` DATE NOT NULL;

Не знаю почему... но когда я делаю описание, я получаю именно то, что хочу.

person Etienne    schedule 12.02.2014