C 中執行SQL Server指令碼

2021-06-08 12:26:37 字數 1041 閱讀 7151

本文將簡單介紹如何在c#中執行sql server指令碼。sqlcmd是sql server的命令列,它提供了一種快速簡便的方式來執行t-sql指令碼。在vs裡,我們可以使用processstartinfo這個類來呼叫sqlcmd,processstartinfo這個類用於啟動程序。假如我們有下面用於備份db的指令碼,其名稱是backup.sql:

[sql]view plain

copy

backup 

database

[test] 

todisk = n

'c:\backup\test.bak'

with

noformat, noinit,  

name

= n'test-full database backup'

, skip, norewind, nounload,  stats = 10  

go  

為了執行backup.sql指令碼,我們使用下面的命令:

[sql]view plain

copy

sqlcmd -s .\mssqlserver -i c:\backup.sql   

對於如何使用sqlcmd 執行transact-sql指令碼檔案,可以參考這裡。

下面將展示如何在c#中呼叫sqlcmd:

1、 在程式裡用新增如下命名空間

[csharp]view plain

copy

using

system.diagnostics;  

2、 相關c#**如下:

[csharp]view plain

copy

private

void

b***emo_click(

object

sender, eventargs e)    

以上,就完整地演示了如何在c#裡呼叫sqlcmd來執行.sql指令碼。

本文出處:

c 執行mysql指令碼 c 執行mysql指令碼

private static void creattables string databasename,string infile process sqlprocess new process if datatypey mysql sqlprocess.startinfo.filename osql...

SQL Server執行大檔案SQL指令碼

今天工作遇到乙個問題 資料庫本來再sql server2008中,現在需要備份乙個資料庫到另一台伺服器上,這台伺服器裝的事sql server2005。首先想到的是資料庫分離和資料庫備份,結果兩種方法都出現異常。最後想到將資料匯出未sql指令碼,然後使用系統命令執行大檔案sql指令碼。因資料庫較大,...

SQL server生成指令碼過大,無法執行問題

從資料庫中匯出指令碼過大時,開啟sql server,提示無法找到指定的模板,請檢查完整路徑是否正確,或者其他打不開的情況,這時候可以考慮以下方式進行插入。使用sqlcmd命令來完成這一工作,注意這些操作需要在要插入的sql的伺服器進行。具體操作如下 1 在查詢分析器中執行下面的sql語句 sele...