как сохранить отметку времени "0000-00-00" в h2 и mysql - PullRequest
0 голосов
/ 19 февраля 2019

Я пытаюсь обновить поле timestamp NOT NULL DEFAULT '0000-00-00 00:00:00' в базе данных до «0000-00-00 00:00:00» при определенных обстоятельствах в приложении Java.Другая команда настроила эту структуру базы данных, с которой я пытаюсь работать.

Я унаследовал приложение, которое использует базу данных H2 для запуска тестов, но базу данных Mysql в производстве.Я нашел способы заставить это работать, когда я запускаю это против БД mysql, но не для БД H2.Так что все мои тесты продолжают терпеть неудачу.

Я попытался установить его на ноль, но это просто выдает ошибку, что поле не может быть нулевым.Я обнаружил, что могу использовать ts '0000-00-00 00:00:00' для mysql, но это не работает в H2.То же самое с timestamp(0000-00-00 00:00:00).

Кто-нибудь знает, возможно ли это, и как я могу обновить это поле для обеих систем баз данных?Или мне нужно вернуться к другой команде и попросить какой-то редизайн?

РЕДАКТИРОВАТЬ Я не нашел технического решения для этого.Я не смог убедить другую команду пойти с NULL, как было предложено, но они согласились на «1970-01-01 00:00:01», которая является действительной датой как для H2, так и для MYSQL.

...