需求:
軟件開發過程中,一般會部署兩個數據庫:一個測試數據庫提供給開發和測試過程使用;一個運維數據庫提供上線使用。當需求變化需增加表時,會遇到數據庫表結構或表數據同步的問題,這時就要復制表結構或表數據。
兩種情形:
一、兩個數據庫部署在同一服務器上:
從數據庫A復制到B:
復制表結構和數據:select * into 數據庫B.dbo.Department from數據庫A.dbo.Department
只復制表結構: select * into 數據庫B.dbo.Department from 數據庫A.dbo.Department where 1!=1
只復制部分字段:select a1,a2 into 數據庫B.dbo.Department from數據庫A.dbo.Department
二、兩個數據庫部署在不同服務器上:
從數據庫A復制到B:
在數據庫B中操作,打開相關配置:
exec sp_configure "show advanced options",1 reconfigure exec sp_configure "Ad Hoc Distributed Queries",1 reconfigure
復制表結構和數據:
select * into 數據庫B.dbo.Department from opendatasource('SQLOLEDB','Data Source=ip|主機名/實例;User ID=sa;PassWord=******').數據庫A.dbo.Department
只復制表結構: 同情形一處理
只復制部分字段:同情形一處理
完成復制表工作后,需要關閉相關配置(注意順序):
exec sp_configure "Ad Hoc Distributed Queries",0 reconfigure exec sp_configure "show advanced options",0 reconfigure
新聞熱點
疑難解答