sqlcmd 是 Microsoft 提供的命令列工具,可在 Windows 命令提示字元中互動式執行 Transact-SQL 語句、執行腳本檔案,並支援輸出結果到檔案。它是資料庫管理員與開發人員進行自動化部署、測試與維護的得力助手。
sqlcmd
出現 1> 提示符即表示已連線。輸入 EXIT 結束會話。
sqlcmd -S myServer
若需 SQL Server 驗證,加上 -U username -P password。
myScript.sql,內含 T-SQL 與 GO 批次分隔符。sqlcmd -S myServer -i C:\myScript.sqlsqlcmd -S myServer -i C:\myScript.sql -o C:\EmpAdds.txt| 參數 | 說明 |
|---|---|
| -S | 伺服器名稱/實例 |
| -d | 預設資料庫 |
| -U/-P | 登入帳號/密碼 |
| -E | 可信連線(預設) |
| -i | 輸入腳本檔 |
| -o | 輸出檔案 |
| -q/-Q | 命令列查詢(-Q 執行後離開) |
| -h | 標題列顯示間隔 |
| -s | 欄位分隔符 |
| -w | 螢幕寬度 |
| -b | 遇錯中止批次 |
| -v | 定義腳本變數 |
| -X | 禁用腳本/環境變數 |
| -? | 顯示完整語法 |
:r filename 在腳本中包含其他檔案。:setvar 定義腳本變數,實現參數化部署。-r1 將錯誤訊息導向 stderr,便於 CI/CD 管線捕捉。熟練掌握 sqlcmd,能大幅提升資料庫操作的自動化與可重複性。