.net 如何利用.bak还原sql数据库
接上一篇的.net 如何保存数据库为.bak文件到文件夹的博客,链接为:https://blog.csdn.net/weixin_42864149/article/details/89884920
DBConnection.cs类代码:
using System;
using System.Collections.Generic;
using System.Text;
using System.Data.SqlClient;//引用SQL命名空间
namespace PMS.PMSClass
{
class DBConnection//定义类型
{
/// <summary>
/// 返回数据库连接的静态方法
/// </summary>
/// <returns>方法返回数据库连接对象</returns>
public static SqlConnection MyConnection()
{
return new SqlConnection(//创建数据库连接对象
@"server=192.168.2.121;database=db_PMS;User Id=users;pwd=haizheng2018");//根据自己的数据库
}
}
}
页面button按钮点击触发的事件:
private void button2_Click(object sender, EventArgs e)//还原数据库
{
try
{
SqlConnection conn = DBConnection.MyConnection();//创建数据库连接
string path = Application.StartupPath.ToString();//得到应用程序路径
path = path.Substring(0, path.LastIndexOf("\\"));//截取路径
path = path.Substring(0, path.LastIndexOf("\\"));//截取路径
path += "\\Backup\\PMS.bak";//添加路径信息
string str =//创建SQL字符串
"use master restore database db_PMS from Disk='" + path + "'";
conn.Open();//打开数据库连接
SqlCommand cmd = new SqlCommand(str, conn);//创建数据库命令对象
cmd.ExecuteNonQuery();//执行操作
conn.Close();//关闭连接
if (MessageBox.Show("还原成功", "提示",//弹出消息对话框
MessageBoxButtons.OK, MessageBoxIcon.Exclamation) == DialogResult.OK)
{
this.Close();//关闭数据库连接
}
}
catch//捕获异常
{
button2_Click(sender, e);//执行按钮Click事件
}
}