.net 如何保存数据库为.bak文件到文件夹

11 篇文章 0 订阅

                   .net 如何保存数据库为.bak文件到文件夹

 目录结构:

 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 button1_Click(object sender, EventArgs e)//备份数据库的方法原理
        {
            try
            {
                strg = Application.StartupPath.ToString();//得到应用程序路径
                strg = strg.Substring(0, strg.LastIndexOf("\\"));//截取路径
                strg = strg.Substring(0, strg.LastIndexOf("\\"));//截取路径
                strg += @"\Backup";//添加路径信息
                string sqltxt =//设置SQL字符串
                    @"BACKUP DATABASE db_PMS TO Disk='" + strg + "\\PMS.bak" + "'";
                if (File.Exists(strg + "\\PMS.bak"))//判断文件是否存在
                {
                    File.Delete(strg + "\\PMS.bak");//删除文件
                    SqlConnection conn = DBConnection.MyConnection();//创建数据库连接对象
                    conn.Open();//连接数据库
                    SqlCommand cmd = new SqlCommand(sqltxt, conn);//创建数据库命令对象
                    cmd.ExecuteNonQuery();//执行操作
                    conn.Dispose();//释放数据库连接资源
                    if (MessageBox.Show("备份成功", "提示", MessageBoxButtons.OK,//弹出消息对话框
                        MessageBoxIcon.Exclamation) == DialogResult.OK)
                    {
                        this.Close();//关闭窗体
                    }
                }
                else
                {
                    SqlConnection conn = DBConnection.MyConnection();//创建数据库连接对象
                    conn.Open();//连接数据库
                    SqlCommand cmd = new SqlCommand(sqltxt, conn);//创建数据库命令对象
                    cmd.ExecuteNonQuery();//执行操作
                    conn.Dispose();//释放数据库连接资源
                    if (MessageBox.Show("备份成功", "提示", MessageBoxButtons.OK,//弹出消息对话框
                        MessageBoxIcon.Exclamation) == DialogResult.OK)
                    {
                        this.Close();//关闭窗体
                    }
                }
            }
            catch (Exception ex)//捕获异常
            {
                MessageBox.Show(ex.Message.ToString(), "提示",//弹出消息对话框
                    MessageBoxButtons.OK, MessageBoxIcon.Information);
            }
        }

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值