如何在 SQL Server 透過 sqlcmd 執行 sql Script

Ivan Cheng
May 13, 2024

--

因為一些原因需要幫忙把資料庫的特定資料表還原到另外一台資料庫,今天就來教大家怎麼做吧。

備份資料表

針對該資料表的資料庫點選右鍵,選擇 Task 的 Generate Scripts。

勾選想備份的資料表如下

根據自己的需求調整 Scripting Options

來源資料庫的版本為 SQL Server 2019 而目的地資料庫則為 SQL Server 2012 ,因此 Script for Server Version 需要更改。

由於目的地資料庫已經建好相關的資料表結構,所以 Types of Data to Script 選擇 Data Only,Script 產生的語法只會有單純的 INSERT。

選擇 Script 產生的檔案位置,點選 Next。

成功畫面如下

若選擇 Single Script File 則 Script 檔案大小約 1.4 GB,選擇 One Script for Per Object 最大的檔案也有 570 MB。

若想透過筆記本打開複製貼上到 SQL Query 執行,肯定變智障。

sqlcmd

我們可以透過 sqlcmd 來完成這項任務,該指令在安裝 SSMS 時就會安裝。

該指令所需要的參數如下

sqlcmd -S [Server] –U [User] –P [Password] -d [DataBase] -i [FilePath]

由於我們是透過本機執行,語法如下。

sqlcmd -S . -d UPLCS -i C:\Users\azureadmin\Downloads\script.sql

直接在 PowerShell 或 CMD 執行就可以了

今天的分享就到這邊,感謝收看。

參考文件

--

--