2013-04-07 262 views
0

我使用C#和內置SQL Server上的Visual Studio 2010中備份數據庫

我想創建一個click事件數據庫備份到指定的位置,但在開發Windows應用程序,我正在運行它,它向我顯示錯誤,該名稱的數據庫不存在。

我使用的代碼是

SqlCommand cmd = new SqlCommand("BACKUP DATABASE GRTU_LIBRARY_MANAGEMENT TO DISK = N'D:\temp\foo' WITH NOFORMAT, NOINIT, NAME = N'Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10", connect); 
cmd.ExecuteNonQuery(); 

它顯示錯誤 「數據庫‘GRTU_LIBRARY_MANAGEMENT’不存在。請確保名稱輸入正確。 BACKUP DATABASE異常終止。」

我在整個應用程序中使用相同的數據庫,但在這裏顯示此錯誤。 我使用的是內置的SQL服務器在Visual Studio 2010

請幫

+0

這是你問的一個重複問題:[see here](http://stackoverflow.com/questions/15861962/backing-up-inbuilt-database-in-visual-studio-using-c-sharp) 。如果您想提供有關現有問題的更多信息,則可以選擇對其進行編輯。 – 2013-04-08 10:47:39

回答

0

好像你錯過了關鍵字DATABASEBACKUP後添加DATABASE和檢查

SqlCommand cmd = new SqlCommand("BACKUP DATABASE GRTU_LIBRARY_MANAGEMENT TO DISK = N'D:\temp\foo' WITH NOFORMAT, NOINIT, NAME = N'Full Database Backup', SKIP, NOREWIND, NOUNLOAD, STATS = 10", connect); 
+0

感謝您的幫助,但仍顯示相同的錯誤 – Hanumendra 2013-04-07 21:16:53

0

聽起來好像它在尋找錯誤的服務器。也許你可以交換「SELECT @@ SERVERNAME」作爲備份語句並查看結果,只是爲了驗證它是否在你期望的服務器上運行。

0

找不到要備份到的文件。請將'D:\ temp \ foo'的文本更改爲'D:\ Temp \ foo \ Test.bak'。請記住目錄D:\ Temp \ foo必須存在。 整個文本如下所示:(將'測試'更改爲您自己的數據庫名稱) SqlCommand cmd = new SqlCommand(@「BACKUP DATABASE Test TO DISK = N'D:\ Temp \ foo \ Test.bak'WITH NOFORMAT,NOINIT,NAME = N'Full Database Backup',SKIP,NOREWIND,NOUNLOAD,STATS = 10「,connect);