話說,那天飯友來問我:「MSSQL能不能只備份一個Table?像Oracle就可以」
我心想,哇~~Oracle好厲害喔…可以單獨備份一個Table耶…
google後才發現…Oracle用的是匯入匯出的功能,原來…那MSSQL也有啊…
MSSQL有一匯入匯出的精靈,可以匯出單一的物件,以MSSQL 2008為例
在欲匯出Table的那個資料庫按右鍵->任務(Task)=>匯出資料(Export Data)
首先是精靈出現,直接下一步
選擇要匯出的資料庫來源,以AdventureWokrs為例,我要匯出Deparment這個Table
可以選擇匯出的資料庫or TXT檔
若想要匯出的目的資料庫不存在,可以直接Create一個,按「New」即可
也可選擇匯出成一個檔案,我選擇匯出成txt檔,記得勾選Unicode
可能選擇匯出Table or 寫一個T-SQL語言
選擇要匯出的Table,這即是飯友的需求
這是匯出成txt檔,在選擇Table的畫面
可以先檢視匯出資料的內容
可以選擇立即執行or備使用SSIS去啟動
選擇立即執行後
執行後的結果,可以看出匯出16筆資料
Check在AdventureWork與Sample內的Department都為16筆資料
這是另外匯出到txt檔的結果
先行把之前的Table刪掉,要使用txt檔匯入資料
同樣在任務(Task)->匯入資料(Import Data)
選擇匯入的來源,此次為txt檔,勾選Unicode
選擇要匯入的資料庫目的地
選擇要匯入的資料庫(可以匯出時多個,匯入時只要一個)
一樣選擇立即匯入
一樣,可以看到匯入16筆
可以看到匯入到Sample的Table
查看結果,16筆,沒錯~!!
在匯入資料表時,其實MSSQL不會幫寫寫好欄位名(若是用TXT檔匯入的話),因此,可以在進階(Advenced)這邊修改欄位名
其實,這就是SSIS的功能,只是沒裝SSIS時,可以用精靈做到。