當我使用給定的代碼從該文件進行備份和恢復時,它成功恢復,但是當我刪除某些表的某些行並從同一個備份文件恢復數據庫時,它給出錯誤從.bak文件使用c恢復sql server 2008數據庫#
「對象引用不設置爲一個對象的一個實例」
if (openFileDialog1.ShowDialog() == DialogResult.OK)
{
cmd2 = new SqlCommand("USE MASTER RESTORE DATABASE plproject FROM DISK = '" + openFileDialog1.FileName + "' WITH REPLACE", Con);
dr = cmd1.ExecuteReader();
//cmd2.ExecuteNonQuery();
dr.Dispose();
MessageBox.Show("Database Restored", "Information", MessageBoxButtons.OK, MessageBoxIcon.Information);
}
您正在創建'cmd2' - 但您正在執行'cmd1'?另外:這是一個查詢,不返回任何數據 - 所以**不使用**'.ExecuteReader()' - 使用'.ExecuteNonQuery()'代替。另外:我建議連接到**連接字符串**中的'master'數據庫,並且不要在你的SQL語句中使用'USE MASTER' –