SqlServer將數據庫中的表復制到另一個數據庫
SqlServer將數據庫中的表復制到另一個數據庫
一、如果兩個數據庫在同一臺服務器上
1、復制表結構和數據(A->B):SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA.dbo.TableA
2、僅僅復制表結構(A->B):SELECT * INTO DatabaseB.dbo.TableB FROM DatabaseA.dbo.TableA WHERE 1=2
二、如果兩個數據庫在不同的服務器上
分為導出和導入兩種,都需要先連接遠程數據庫,再進行操作。如何連接遠程數據庫?
在連接遠程數據庫之前,需要先打開Ad Hoc服務,依次執行下面四句語句(不要一次執行):
EXEC sp_configure “show advanced options”,1
RECONFIGURE
EXEC sp_configure “Ad Hoc Distributed Queries”,1
RECONFIGURE
這樣就可以連接遠程數據庫瞭:
SELECT * INTO DatabaseB.dbo.TableB FROM opendatasource( ‘SQLOLEDB’, ‘Data Source=IP/ServerName;User ID=SA;Password=***’ ).DatabaseA.dbo.TableA WHERE 1=2
記住,為瞭安全起見,執行完成之後,請關閉Ad Hoc服務:
EXEC sp_configure “Ad Hoc Distributed Queries”,0
RECONFIGURE
EXEC sp_configure “show advanced options”,0
RECONFIGURE,
復制表結構與數據的圖文方法
復制表結構
首先,打開並連接Sql Server,在源數據庫Source_db(源數據庫名稱)上右鍵,然後依次點擊“編寫表腳本為”→“CREATE到”→“新查詢編輯器窗口”。
在上一步產生的編輯器中按”crtl+a“組合鍵全選內容,然後右鍵“復制“(或按”crtl+c”鍵)。
新建查詢,然後右鍵”粘貼“(或ctrl+v);如圖所示,將代碼中Source_db(源數據庫名)改為target_db(目標數據庫名)。接著右鍵單擊”執行“執行代碼。
然後,在目標數據庫的表結構中就可以看到被復制過來的表瞭。
其實上面的操作一句sql語句就可以實現瞭
select * into new_table from old_table;
表的數據內容復制圖文方法
選中目標數據庫target_db,然後點擊”任務“→”導入數據“。
進入”SQL Server導入導出向導“,根據提示步驟操作。
選擇數據源(源數據庫)。
選擇目標(目標數據庫)、指定表復制或查詢。
選擇源表和源視圖:設置源表和目標表後,單擊“編輯映射”按鈕,在彈出窗口中選中“啟用標識插入”。(否則後面會出錯)
一直點擊“下一步”至最後完成操作。
有點是不用輸入這麼多字段名瞭。
對應sql語句如下:
insert into table1(col1,col2,col3,…)
select [col1,col2,col3…] from table2 ;
到這裡這篇關於SqlServer將數據庫中的表復制到另一個數據庫的文章就介紹到這瞭,更多相關SqlServer表復制內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!
推薦閱讀:
- None Found