0
嗨,我剛剛開始學習C#。我正在嘗試恢復.bak文件。但是我收到錯誤。由於數據庫正在使用中,無法獲得獨佔訪問權限。使用C#還原SQL Server 2005數據庫。回滾問題
我做了我的研究here和here都說我必須執行回滾。我不知道如何在恢復代碼中應用回滾。
public void RestoreDatabase(String RestorePath)
{
try
{
SqlConnection sqlCon = new SqlConnection("Data Source=RITZEL-PC\\SQLEXPRESS;User ID=NNIT-Admin;Password=password;Initial Catalog=master;");
ServerConnection connection = new ServerConnection(sqlCon);
Server sqlServer = new Server(connection);
Restore restoreDB = new Restore();
restoreDB.Database = "NNIT DB";
restoreDB.Action = RestoreActionType.Database;
restoreDB.Devices.AddDevice(RestorePath, DeviceType.File);
restoreDB.ReplaceDatabase = true; // will overwrite any existing DB
restoreDB.NoRecovery = false; // NoRecovery = true;
restoreDB.SqlRestore(sqlServer);
MessageBox.Show("Restored");
}
catch (Exception ex)
{
MessageBox.Show(ex.Message + " " + ex.InnerException);
}
}
我會放在哪裏呢?還原之前restoreDB = new Restore();? – Ritzel 2012-02-16 09:55:27
是的,它應該殺死所有到數據庫的連接 – 2012-02-16 09:57:09
不,它不工作.. – Ritzel 2012-02-16 09:59:36