sql server不能将显式值插入时间戳列.
场景:
最近回学校后,还要给老师做项目,真的服气。有个需求是sqlserver的数据同步,把甲方的数据同步到我们服务器,进行数据操作。其中有些表有时间戳字段,这个时候直接导出sql,再导入会报错:“不能将显式值插入时间戳列”。用其他的方式传,比如导出excel,再导入会导致字段类型改变,数据丢失。
解决:
有以下几种方法解决:
1.如果是同操作系统,比如都是win的,可以通过数据库的备份导出为.bak文件,再导入。
2.如果说甲方不给你备份文件,或者你只要同步一张表,那么用这个navicat,链接如下(不是破解版,破解版自己找资源):
链接:https://pan.baidu.com/s/1WGiUXC0gS7D2c5KGtCF_yg 提取码:3b4q
注意:目前我测试到只能用这个工具,SQL Server Management Studio或其他版本的Navicat,都不行。
步骤如下:
选择sqlserver数据库的模式,使用数据传输:
左边选择要传输的表,右边可以直接用连接进行传输:
直接开始:
取目标数据库看一下结果,已经传输过去了:
不过至于为什么这个版本的可以,其他的都不可以,我也不是很理解。
说不定老版本的sqlservermanager也可以实现。