我正在尝试将数百个表从一个SQL Serdatabase复制到另一个SQL Serdatabase。我无权访问备份文件或服务器的文件系统。这些表有一个名为ts的时间戳列。我正在使用导出数据向导来创建基于文件的dtsx文件。在验证步骤期间,它给出错误“ts”。无法插入行版本列。巫师停止前进。 我理解为什么会收到错误。问题是由于表的数量,我不能手动转到每个表并将timestamp列设置为'ignore'。这非常耗时。
我想要创建dtsx文件然后我有一个我编写的程序来编辑文件以忽略这些列。
有没有办法禁用验证过程或解决这么多表的时间戳问题? 我的另一个选择是从源表中删除所有时间戳列。我不关心那些列中的值。 (使用SSMS 17.3)
答案 0 :(得分:0)
在目标数据库中,您可以将所有时间戳列更改为二进制(8) - 自动执行此操作,您可以为此创建过程,生成alter命令。
然后将值从时间戳复制到二进制(8)列没有问题,并且不会发生错误(您将保留其中的值,但将以不同的数据类型存储)。