首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 数据库 > SQL Server >

两数据库间导入所有表和记录有关问题

2012-09-14 
两数据库间导入所有表和记录问题一和二数据库,一是SQL2000的,二是2005的,一附加到2005报错附加不了现在想

两数据库间导入所有表和记录问题
一和二数据库,一是SQL2000的,二是2005的,一附加到2005报错附加不了现在想用脚本将一所有数据到二中,要保留原来的记录,原来的主键原来的索引,自增字段也要保留数据要一致,这样用什么方法好一些?谢谢

[解决办法]
数据库生成表,触发器,存储过程的脚本,在05中执行

然后根据用脚本将00库导入到05库,导入方法大致如下:
建好新库后,先禁用新库所有触发器
对于自增列
set identity_insert tablename on
对于计算列,取出时排除掉,不然插入会有错
其他列直接处理
可以用try catch取出执行有问题的表,然后手动排除错误执行
最后启用新库所有触发器

[解决办法]
附加应该一般都可以 数据库向下兼容 请将报错信息给出

另外:保持表同步 可以考虑下用订阅复制
[解决办法]
你可以备份还原啊,低版本的是可以还原到高版本的。

另外你说无法附加有错误吗?
[解决办法]
这说明你的数据有问题了,因为2000到2005还是需要升级的,所以你无法附加或者欢迎。需要将2000的错误修复,如果不解决的话可能会有更严重的错误出现。运行DBCC CHECKDB然后把错误贴出了。

如果你不想修复只是想导入数据,可以在2000中导出脚本,然后在SQL SERVER 2005中创建对象。创建完成后,使用导入导出向导将数据导入。

热点排行