在某些情况下,我试图在Java应用程序中将数据库中的timestamp NOT NULL DEFAULT '0000-00-00 00:00:00'
字段更新为“ 0000-00-00 00:00:00”。另一个团队设置了我要使用的数据库结构。
我继承了一个使用H2数据库运行测试的应用程序,但Mysql数据库正在生产中。我已经找到了使它在mysql数据库上运行但不能在H2 DB上运行的方法。所以我所有的测试都一直失败。
我尝试将其设置为null,但这只会给出一个错误,该字段不能为null。我发现我可以对MySQL使用ts '0000-00-00 00:00:00'
,但是在H2中不起作用。与timestamp(0000-00-00 00:00:00)
相同。
有人知道这是否可行,我如何为两个数据库系统更新此字段?还是我需要回到另一个团队并要求某种重新设计?
编辑 我还没有找到技术解决方案。我无法说服其他团队按照建议使用NULL,但他们确实同意'1970-01-01 00:00:01',这在H2和MYSQL中都是有效日期。