国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 編程 > BAT > 正文

使用BAT批處理執行sql語句的代碼

2020-07-26 20:15:25
字體:
來源:轉載
供稿:網友

1、把待執行Sql保存在一個文件,這里為20110224.sql。
2、新建一個擴展名.bat的批處理文件,輸入下面命令并保存后,雙擊.bat文件,系統會自動執行20110224.sql的語句:

復制代碼 代碼如下:

osql -S gdjlc -d TestDB -U sa -P 1 -i 20110224.sql

osql參數見下面
=======================================================================

E:/>osql /?
icrosoft (R) SQL Server 命令行工具
版本 10.0.1600.22 NT INTEL X86
版權所有 (c) Microsoft Corporation。保留所有權利。

注意: osql 并不支持 SQL Server 2008的所有功能。
請使用 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
 [-? 顯示語法摘要]

 通過批處理執行sql命令實例:

 通過批處理執行sql命令:

1. Restore.bat文件內容:

      osql -E -S -i C:/TempDB/Restore.txt

 

2. Restore.txt文件內容:

復制代碼 代碼如下:

use master
if exists (select * from sysdevices where name='TruckDB')
       EXEC sp_dropdevice 'TruckDB'
Else
       EXEC sp_addumpdevice 'disk','TruckDB', 'C:/Program Files/Microsoft SQL Server/MSSQL/Data/TruckDB.mdf'
restore database TruckDB
from disk='c:/TempDB/TruckDB'
with replace
 

導出數據到txt:

復制代碼 代碼如下:

EXEC master..xp_cmdshell 'bcp "test..mintest" in d:/mintest2.txt -c -Sd02 -Usa -P'
EXEC master..xp_cmdshell 'bcp "test..min" out d:/mintest2.txt -c -Sd02 -Usa -P'

很多情況下,需要給客戶更新數據庫,不值得

跑一趟,客戶自己也不懂得如何操作,遠程操作網速還跟不上...這時可以把要更新的sql語句保存成文件,寫一個批處理在命令行狀

態下調用查詢分析器來執行這個sql文件里的語句。

下面就是sqlserver幫助里對于查詢分析器(isqlw)命令行參數的解釋:

isqlw 實用工具(SQL 查詢分析器)使您得以輸入 Transact-SQL 語句、系統存儲過程和腳本文件。通過設置快捷方式或創建批處理

文件,可以啟動預配置的 SQL 查詢分析器。

語法
isqlw
    [-?] |
     [
         [-S server_name[instance_name]]
         [-d database]
         [-E] [-U user] [-P password]
         [{-i input_file} {-o output_file} [-F {U|A|O}]]
         [-f file_list]
         [-C configuration_file]
         [-D scripts_directory]
         [-T template_directory]
     ]

參數
-?

顯示用法信息。

-S server_name[instance_name]:

指定要連接到的 Microsoft® SQL Server™ 2000 實例。指定用于連接到該服務器上的 SQL Server 2000 默認實例的 server_name。

指定用于連接到該服務器上的 SQL Server 2000 命名實例的 server_nameinstance_name。如果未指定服務器,isqlw 將連接到本地

計算機上的 SQL Server 默認實例。從網絡上的遠程計算機執行 isqlw 時,此選項是必需的。

-d database

當啟動 isqlw 時,發出一個 USE database 語句。默認值為用戶的默認數據庫。

-E

使用信任連接而不請求密碼。

-U user

用戶登錄 ID。登錄 ID 區分大小寫。

-P password

是登錄密碼。默認設置為 NULL。

-i input_file

標識包含一批 SQL 語句或存儲過程的文件。必須同時指定 -i 和 -o 選項。如果指定 -i 和 -o 選項,將執行輸入文件中的查詢,并

將結果保存到輸出文件中。在查詢執行過程中不顯示用戶接口。當執行完成后,進程退出。

-o output_file

標識接收來自 isqlw 的輸出的文件。必須同時指定

主站蜘蛛池模板: 盱眙县| 沙湾县| 石棉县| 淮南市| 汪清县| 长兴县| 玛沁县| 桐乡市| 县级市| 营口市| 濉溪县| 合川市| 麻栗坡县| 滨州市| 正阳县| 汉川市| 珲春市| 明溪县| 革吉县| 南昌市| 保德县| 呈贡县| 印江| 鹤山市| 德令哈市| 诸城市| 麻阳| 鄂托克前旗| 舞阳县| 尚义县| 阿荣旗| 苗栗县| 准格尔旗| 平远县| 绩溪县| 勃利县| 辰溪县| 中西区| 卫辉市| 江北区| 新津县|