我正在读取一个db表并将相同的数据写入另一个db表。
现在,如果源中的日期字段没有任何数据(null
),那么当它被写入目标表时 - 相同的字段将默认为日期“1/1/1900”。
我没有在我的程序中的任何位置设置此默认值。不知道为什么会这样。
任何想法如何防止这种情况而不是检查每个字段的null
值并将其设置为不同的值?
我正在使用Eclipse和SQL Server数据库。
感谢。
答案 0 :(得分:2)
一种可能性是日期列的默认值实际设置为“1/1/1900”。如果是这样,请使用SQL ALTER TABLE删除此默认值。 SQL Server的语法是:
ALTER TABLE Table1 ALTER COLUMN DateColumn1 DROP DEFAULT
更新:看起来这个日期是开箱即用的默认设置,请尝试设置:
ALTER TABLE Table1 ALTER COLUMN DateColumn1 DATETIME NULL
这里有一些重要的注意事项: