日期:2014-05-18  浏览次数:20468 次

请问数据库结构的复制与覆盖问题
现在有数据库A和数据库B,结构大致一样,只是数据库A中部分表的列多一些,有些视图和存储过程不一样,现在想把数据库B的结构改为和A完全一样(但是不能把A中的现有的数据给弄丢了),请问该如何操作?

------解决方案--------------------
LZ 的问题我以前也做过,当时为了避免麻烦写了一个很长很长的存储过程

如果想参考一下可以点击一下的连接,因为我是用Sql2005写的,要在Sql2000下使用需要修改一下
http://blog.csdn.net/hb_gx/archive/2007/06/25/1666347.aspx
------解决方案--------------------
表不同,只能用代码或手工进行比较了。

关于函数、视图、存储过程等,直接生成脚本,重新全部生成一遍即可。


------解决方案--------------------
可以换个思路,把目标数据库备份一下,清除数据,把原来要修改结构的库中数据导入到这个数据库中。
------解决方案--------------------
做一个空的A库,把B的数据导入到这个库
------解决方案--------------------
复制一份数据库A的mdf ldf文件 ,然后分离数据库B,然后附加数据库A的mdf ldf文件,起名为数据库B
------解决方案--------------------
现在有数据库A和数据库B,结构大致一样,只是数据库A中部分表的列多一些,有些视图和存储过程不一样,现在想把数据库B的结构改为和A完全一样(但是不能把A中的现有的数据给弄丢了),请问该如何操作?

1、如果B的数据不需要的话,把A备份然后还原成B,或拷贝MDF,LDF,然后附加为B.
2、如果需要B的数据,将B的数据导出为文本.使用1的步骤,然后将数据导入。