我将尝试从C#应用程序执行备份数据库。我找到了更多教程如何做到这一点。在新项目中复制一些解决方案并运行。我一直遇到一个连接错误,如:
"服务器备份失败"。
在这一行:
source.SqlBackup(服务器);
你知道我是如何解决这个问题的吗?我认为这个问题与服务器的连接有关(它坏了?)。
您可以在下面看到备份方法:
public static void BackupDatabase(string backUpFile)
{
ServerConnection con = new ServerConnection(@".\SQLEXPRESS");
Server server = new Server(con);
Backup source = new Backup();
source.Action = BackupActionType.Database;
source.Database = "DB";
BackupDeviceItem destination = new BackupDeviceItem(backUpFile, DeviceType.File);
source.Devices.Add(destination);
source.SqlBackup(server);
con.Disconnect();
MessageBox.Show("Kopia wykonana!");
}
答案 0 :(得分:2)
你可以尝试一些事情。
确保您的数据库名称正确
source.Database =“DB”; //检查数据库名称实际上是'DB'。
过去我使用带有连接字符串的ServerConnection
时遇到了一些问题,即使语法允许您这样做。我所做的是从连接字符串创建SqlConnection
,然后将其提供给ServerConnection
。
string connectionString = "Your connection string goes here";
SqlConnection sqlCon = new SqlConnection(connectionString);
ServerConnection connection = new ServerConnection(sqlCon);
我也会尝试初始化备份对象。
source.Initialize = true;
答案 1 :(得分:1)
为PC用户添加了对C:\驱动器上备份文件夹的完全控制权!谢谢大家的帮助!但是我只有一个问题:如何修改上面的C#代码,程序应该自己在C:\上创建备份文件夹并进行复制数据库?目前我必须手动完成。