使用c#和SMO还原数据库时发生异常
我是一名大学生,我为该项目创建了备份和恢复功能。我成功地使用SMO创建了备份功能。但是我在恢复功能方面有一些问题。存在异常(图像中给出了异常)使用c#和SMO还原数据库时发生异常,c#,wpf,restore,smo,C#,Wpf,Restore,Smo,我是一名大学生,我为该项目创建了备份和恢复功能。我成功地使用SMO创建了备份功能。但是我在恢复功能方面有一些问题。存在异常(图像中给出了异常) 这是我要还原的代码 static string DATABASENAME = "adora"; static string SEVERNAME = "localhost"; static string CONNECTIONSTRING = "Server=" + SEVERNAME +";Database=
这是我要还原的代码
static string DATABASENAME = "adora";
static string SEVERNAME = "localhost";
static string CONNECTIONSTRING = "Server=" + SEVERNAME +";Database="+ DATABASENAME + ";Trusted_Connection=True;";
public void RestoreDatabase(String filePath, String dataFilePath, String logFilePath)
{
Restore sqlRestore = new Restore();
BackupDeviceItem deviceItem = new BackupDeviceItem(filePath, DeviceType.File);
sqlRestore.Devices.Add(deviceItem);
sqlRestore.Database = DATABASENAMERE;
using (SqlConnection connectionx = new SqlConnection(CONNECTIONSTRINGRE))
{
connectionx.Open();
// Do work here; connection closed on following line.
ServerConnection connection = new ServerConnection(connectionx);
Server sqlServer = new Server(connection);
Database db = sqlServer.Databases[DATABASENAMERE];
sqlRestore.Action = RestoreActionType.Database;
String dataFileLocation = dataFilePath + DATABASENAMERE + ".mdf";
String logFileLocation = logFilePath + DATABASENAMERE + "_Log.ldf";
db = sqlServer.Databases[DATABASENAMERE];
RelocateFile rf = new RelocateFile(DATABASENAMERE, dataFileLocation);
sqlRestore.RelocateFiles.Add(new RelocateFile(DATABASENAMERE, dataFileLocation));
sqlRestore.RelocateFiles.Add(new RelocateFile(DATABASENAMERE + "_log", logFileLocation));
sqlRestore.ReplaceDatabase = true;
//sqlRestore.Complete += new ServerMessageEventHandler(sqlRestore_Complete);
sqlRestore.PercentCompleteNotification = 10;
// sqlRestore.PercentComplete += new PercentCompleteEventHandler(sqlRestore_PercentComplete);
sqlRestore.SqlRestore(sqlServer);
db = sqlServer.Databases[DATABASENAMERE];
db.SetOnline();
sqlServer.Refresh();
}
}
是的,我读过。但是我想不出一个办法来解决这个问题。我尝试将数据库名称更改为master。但这对我不起作用提示:这是你的连接。我试了很多次。但我不知道是什么错了。请帮我做这个