1

我希望能够运行.Net MVC 应用程序的 SQL Express 2008 数据库的按需备份,例如插入运行该应用程序的机器的闪存棒。

我试过

QuickstemDataContext db = new QuickstemDataContext();
 string quickstem_path = Path.Combine(save_path, "quickstem.backup");
 db.ExecuteCommand(string.Format("BACKUP DATABASE {1} TO DISK = '{0}' WITH COMPRESSION;", quickstem_path, db.Mapping.DatabaseName));

但得到例外

数据库 'quickstem' 不存在。确保输入的名称正确。BACKUP DATABASE 异常终止

我正在使用以下连接字符串。

connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\quickstem.mdf;Integrated Security=True;User Instance=True"

我是否需要使用 Express Management Studio 之类的东西附加数据库并为其命名等。理想情况下,我希望保持应用程序部署非常简单,而无需设置 sql 管理工作室等。这种附加可以通过其他方式完成还是可以备份无需附加即可完成

我尝试为其提供 .mdf 文件的完整路径而不是数据库名称,但在 c 上出现语法错误:

4

1 回答 1

1

你会发现,如果你添加Database=Quickstem到你的连接字符串,你的备份代码就可以正常工作。

Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\quickstem.mdf;Integrated Security=True;User Instance=True;Database=Quickstem
于 2010-09-03T14:30:57.050 回答