如何以编程方式使用.bak数据库备份文件(通过SQL Server中的查询备份)?
我希望我的应用程序将我的数据库备份到一个位置(我已经可以这样做了),并且我还希望它能够加载备份的数据库(.bak文件).
我怎么能用C#做到这一点?
我正在使用SQL Server 2008 R2数据库构建一个C#应用程序,该数据库存储在bin我项目的文件夹中.我使用Linq to Sql方法创建数据库并将其附加到我的项目中.
我遇到的问题是,当我尝试创建数据库的备份时.它抛出一个错误说
数据库(database_name)不存在,请确保正确输入名称.BACKUP DATABASE异常终止.
这是我在按钮点击事件上写的代码:
try
{
SaveFileDialog sd = new SaveFileDialog();
sd.Filter = "SQL Server database backup files|*.bak";
sd.Title = "Create Database Backup";
if (sd.ShowDialog() == DialogResult.OK)
{
using (SqlConnection conn = new SqlConnection(connStr))
{
string sqlStmt=string.Format("BACKUP DATABASE <database_name> TO DISK='{0}'",sd.FileName);
using (SqlCommand bu2 = new SqlCommand(sqlStmt, conn))
{
conn.Open();
bu2.ExecuteNonQuery();
conn.Close();
MessageBox.Show("Backup Created Sucessfully");
}
}
}
}
catch(Exception ex)
{
MessageBox.Show(ex.ToString());
}
Run Code Online (Sandbox Code Playgroud)
我的连接字符串:
string connStr = ConfigurationManager.ConnectionStrings["project_name.Properties.Settings.project??_nameConnectionString"].ConnectionString;
Run Code Online (Sandbox Code Playgroud)
然后从我的app.config文件
<add name="project_name.Properties.Settings.project_nameConnectionString" …Run Code Online (Sandbox Code Playgroud)