vb.net
2013-07-19 70 views 0 likes 
0

我在使用vb.net中的存儲過程時遇到了一些問題。我想知道如何使用存儲過程本身而不是其名稱來執行存儲過程,例如恢復備份。執行存儲過程的VB.NET

這裏是我的代碼:

Try 

con.ConnectionString = strCon 

Dim strCommand as String = "RESTORE FILELISTONLY 
          FROM DISK = 'C:\AdventureWorks.BAK' 
          WITH FILE = 1 
          GO" 

Dim cm As New SqlClient.SqlCommand(strCommand, con) 

con.Open() 

cm.ExecuteNonQuery() 

當我執行它,它說,找不到存儲過程「RESTORE FILELIST ONLY,...

所以我想知道是否有一種方法執行我寫 的Visual Basic本身作爲一個字符串。謝謝內的存儲過程。

+0

世界爲什麼你會希望你的應用程序恢復數據庫? –

+0

我試圖做很多不僅僅是恢復,我必須恢復,然後縮小它並做了很多東西,唯一的問題是執行我寫入內聯的存儲過程。 – avi

+1

'GO'是**不是** T-SQL命令 - 只是刪除它。另外:這有**沒有任何**與存儲過程 - 你正在使用執行內聯SQL語句... –

回答

0

cm.ExecuteNonQuery() 
之前0

嘗試

cm.CommandType = CommandType.Text 
+2

是不是默認的? – LarsTech

+0

@LarsTech我認爲如此。但在這種情況下,它看起來像是試圖插入文本作爲SP –

相關問題