1. 程式人生 > >SqlServer--bat批處理執行sql語句1-osql

SqlServer--bat批處理執行sql語句1-osql

首先需要知道,此處使用的批處理命令是osql ,如果安裝了SqlServer,目錄類似:

D:\Program Files\Microsoft SQL Server\100\Tools\Binn

指令碼:

cd D:\Program Files\Microsoft SQL Server\100\Tools\Binn
d:
osql -S ip -d dbname-Uusername-P password -iC:\Users\nyzrj\Desktop\SQLQuery9.sql -oC:\Users\nyzrj\Desktop\SQLQuery9.txt

以上指令碼,切換到osql所在的目錄之後,執行osql命令。

通過 OSQL -? 檢視相關引數:

D:\Program Files\Microsoft SQL Server\100\Tools\Binn>OSQL -?
Microsoft (R) SQL Server 命令列工具
版本 10.50.1600.1 NT x64
版權所有 (c) Microsoft Corporation。保留所有權利。
注意: osql 並不支援 SQL Server 2008 R2的所有功能。
請使用 sqlcmd。有關詳細資訊,請參閱 SQL Server 聯機叢書。
用法: osql                   [-U 登入 ID]          [-P 密碼]
  [-S 伺服器]                [-H 主機名]           [-E 可信連線]
  [-d 使用資料庫名稱]        [-l 登入超時值]       [-t 查詢超時值]
  [-h 標題]                  [-s 列分隔符]         [-w 列寬]
  [-a 資料包大小]            [-e 回顯輸入]         [-I 允許帶引號的識別符號]
  [-L 列出伺服器]            [-c 命令結束]         [-D ODBC DSN 名稱]
  [-q "命令列查詢"]          [-Q "命令列查詢" 並退出]
  [-n 刪除編號方式]          [-m 錯誤級別]
  [-r 傳送到 stderr 的訊息]  [-V 嚴重級別]
  [-i 輸入檔案]              [-o 輸出檔案]
  [-p 列印統計資訊]          [-b 出錯時中止批處理]
  [-X[1] 禁用命令,[退出的同時顯示警告]]
  [-O 使用舊 ISQL 行為禁用下列項]
      <EOF> 批處理
      自動調整控制檯寬度
      寬訊息
      預設錯誤級別為 -1 和 1
  [-? 顯示語法摘要]


此處使用的主要是

-S 伺服器ip 

-d 資料庫名稱

-U 連線使用者名稱

-P 使用者的密碼

-i 執行的sql檔案

-o sql語句輸出的結果檔案

備註:

SQLQuery9.sql 檔案的內容是:

select * from t_0000000001 

因此,輸出的 SQLQuery9.txt 的內容是查詢結果集。