我正在將名爲databasebkup.bak
(保存在C:\\databasebkup.bak
中)的文件中的數據庫恢復到名爲MyDatabase的Sql Server 2005數據庫。恢復sql備份時出錯
我已經在我的代碼,它看起來像這樣引用Microsoft.SqlServer.Management.Common;Microsoft.SqlServer.Management.Sdk.Sfc;
和Microsoft.SqlServer.Management.Smo
:
Microsoft.SqlServer.Management.Smo.Server smoServer = new Server(
new ServerConnection("."));
Database db = smoServer.Databases["MyDatabase"];
string dbPath = Path.Combine(db.PrimaryFilePath, "MyDatabase.mdf");
string logPath = Path.Combine(db.PrimaryFilePath, "MyDatabase_Log.ldf");
Restore restore = new Restore();
var deviceItem = new BackupDeviceItem("C:\\databasebkup.bak", DeviceType.File);
restore.Devices.Add(deviceItem);
restore.Database = "C:\\databasebkup.bak";
//restore.FileNumber = restoreFileNumber;
restore.Action = RestoreActionType.Database;
restore.ReplaceDatabase = true;
restore.SqlRestore(smoServer);
db.SetOnline();
smoServer.Refresh();
db.Refresh();
但同時恢復,它返回此錯誤:
Restore failed for Server servername'
誰能告訴我在哪兒會出錯嗎?