1

这是我在同一个论坛中的上一个问题的后续问题。

我想备份我的 SQL Server 数据库。这是代码,用于 C# 中的备份。

userConn = new SqlConnection(userdatabase);
userConn.Open();

string UserString;

UserString = "BACKUP DATABASE @DBName TO  DISK = @FilePath";

String destPath = DestDirectory + "\\UserDataTable.bak";
SqlCommand cmd = new SqlCommand(UserString, userConn);

cmd.Parameters.AddWithValue("@dbName", userConn.Database);
cmd.Parameters.AddWithValue("@FilePath", destPath);

cmd.ExecuteNonQuery();
cmd.Dispose();

但是,它会抛出一个 SQLException,

“无法打开备份设备 'D:\BookKeeping\Database\11_01_2013_21_15\Database\UserDataTable.bak'。操作系统错误 3(无法检索此错误的文本。原因:15105)。备份数据库异常终止。”

任何想法,可能有什么问题?

非常感谢您的时间和帮助。

4

2 回答 2

5

“操作系统错误3”表示找不到目录。SQL 不会为您创建备份目录;您必须在运行备份命令之前手动创建它。

于 2013-01-11T17:58:28.930 回答
1

确保您的 SqlServer 和您要创建备份的位置是同一个系统。如果您正在远程使用 sqlServer(不在您的系统中),那么您无法在您的机器上创建备份,或者您也无法.bak从您的机器上恢复数据库。

于 2017-07-12T05:21:01.623 回答