日期:2014-05-17  浏览次数:20489 次

sql server 数据库备份恢复问题
我将数据库进行了备份,然后将旧数据库的所有varchar字段更改成了nvarchar,现在想将备份数据库的数据插入到旧的数据库中去。因为数据量太大了,不想通过中间数据库导多一次。
------最佳解决方案--------------------
直接在元数据库上修改字段类型么,何必要再导数据。
------其他解决方案--------------------
数据量几千万左右的话直接修改数据类型是可以的。如果好几十亿,那就考虑分批修改。
------其他解决方案--------------------
1、把数据导到一个临时表(临时实体表也行)
2、先修改所有需要修改的字段
3、用insert into xx(字段) select xxx,convert(nvarchar(xx),需要转换的字段).... from 临时表

然后清空临时表

注意字段不要用*,并且需要转换的字段加上convert/cast来转换后再插入
------其他解决方案--------------------
导入的时候把数据库恢复模式换成大容量日志,否则ldf文件会很大。
------其他解决方案--------------------
要修改的字段太多,几百个
------其他解决方案--------------------
两大高手还有别的解决方案吗?我有备份数据库喔

------其他解决方案--------------------
表也有几百个,只能批量修改。我希望专讲们能够就我的备份数据进行回答。谢谢!

------其他解决方案--------------------
自己解决了,还是谢谢大家