注册
SQLSERVER迁移至达梦DM默认时间戳注意事项
专栏/培训园地/ 文章详情 /

SQLSERVER迁移至达梦DM默认时间戳注意事项

DM_665741 2024/06/13 736 0 0
摘要

随着信创的进程的推进,越来越多的程序采用了国产化数据库。我们公司的产品也加入到了国产化的大潮中。我们之前采用的是SQL SERVER数据库,使用了达梦的DTS迁移工具进行了整库的数据迁移。
不过在迁移后也发现了一定的问题,在这里和大家分享一下,希望对大家有所帮助。
在原先的SQL SERVER数据库表中,我们有些表添加了默认时间戳列,但是在迁移到达梦数据库后对应的列并未将默认值同步迁移。导致了在程序使用对应功能时直接报错,不能将空值插入列。
以下SQL可以去查看未添加默认值的列
select TABLE_NAME,DATA_DEFAULT,* from user_tab_columns where COLUMN_NAME='对应列名' and DATA_TYPE='BINARY';
image.png
当DATA_DEFAULT列为空则说明当前列的默认值未迁移到达梦数据库中。
这时则需要手动去添加
select 'alter table ' ||TABLE_NAME || ' ALTER COLUMN RECORD_TIME SET DEFAULT (cast(UNIX_TIMESTAMP(SYSDATE) as bigint))'|| ';'
from user_tab_columns where COLUMN_NAME='RECORD_TIME' and DATA_TYPE='BINARY';
image.png
添加后再测试程序,流程正常。希望以上对大家有所帮助!

评论
后发表回复

作者

文章

阅读量

获赞

扫一扫
联系客服