繁体   English   中英

SQL Server备份命令错误

[英]SQL Server Backup Command Error

我正在尝试在Visual Studio 2010中创建SQL Server数据库的备份。

我正在使用以下命令来备份数据库:

备份数据库Db到磁盘='c:\\ server.bak'

这是我正在使用的连接字符串。

<add name="ConnectionString" connectionString="Data Source=.\SQLEXPRESS;AttachDbFilename=|DataDirectory|\Db.mdf;Integrated Security=True;User Instance=True" providerName="System.Data.SqlClient"/>

但是,当我运行命令时,出现以下错误信息。

数据库“ Db”不存在。

这是描述我的错误的屏幕截图:

http://www.cs.purdue.edu/homes/aerfanfa/sqlerror.jpg

有人能解决我的问题吗? 谢谢!

问题是:您的数据库db.mdf 附加到SQL Server Express实例-因此,您无法对其进行备份。

整个AttachDbFileName=.....这个故事有些棘手-如果您问我,那真是一团糟。

我建议不要忘记使用AttachDbFileName=...东西,而是:

  • 只需将db.mdf文件附加到本地SQL Server Express实例(使用SQL Server Management Studio Express)

  • 使用其逻辑数据库名称与附加数据库对话,而不用弄乱.mdf文件

一旦你做到了这一点- 那么你可以用这样的命令BACKUP DATABASE ...和其他一切!

您的连接字符串也将更加简单!

<add name="ConnectionString" 
     connectionString="Server=.\SQLEXPRESS;Database=YourDatabaseName;Integrated Security=True;"
     providerName="System.Data.SqlClient"/>

尝试在Manament studio中右键单击数据库,选择任务,然后选择“备份”。 设置完参数后,您可以选择“脚本”,这将为您提供适当的备份脚本。

备份脚本如下所示:

BACKUP DATABASE [Db] TO  DISK = 
N'C:\Server.bak'
 WITH NOFORMAT, INIT,  NAME = N'Db Backup', SKIP, NOREWIND, NOUNLOAD, 
STATS = 10
GO

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM