备份与恢复ACCESS数据库

备份与恢复ACCESS数据库
核心技术:
File.Copy

1.前台
       <table>
          <tr>
            <td align="center" colspan="3" style="height: 19px"><strong><span style="font-size: 12pt">备份与恢复ACCESS数据库</span></strong></td>
            </tr>
            <tr>
                <td style="width: 192px">数据库备份名称:</td>
                <td><asp:TextBox ID="TextBox1" runat="server" Columns="17" MaxLength="17"></asp:TextBox></td>
                <td><asp:Button ID="Button1" runat="server" OnClick="Button1_Click" Text="数据备份" /></td>
            </tr>
            <tr>
                <td style="width: 192px">数据库恢复名称:</td>
                <td><asp:DropDownList ID="DropDownList1" runat="server" Width="153px"></asp:DropDownList></td>
                <td><asp:Button ID="Button2" runat="server" OnClick="Button2_Click" Text="数据恢复" /></td>
            </tr>
        </table>
2.后台

using System.IO;
using System.Data.SqlClient;

public partial class _Default : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            TextBox1.Text = DateTime.Now.ToShortDateString()+DateTime.Now.Hour.ToString() + "H.mdb";
            this.DataBindList();
        }
    }
    protected void Button1_Click(object sender, EventArgs e)
    {
        if (!File.Exists(Server.MapPath(@"~\bakDataBase\" + TextBox1.Text)))
        {
            File.Copy(Server.MapPath(@"~\App_Data\Test.mdb"), Server.MapPath(@"~\bakDataBase\" + TextBox1.Text));
            this.DataBindList();
            Response.Write("数据备份成功!");
        }
        else
        {
            Response.Write("备份文件已经存在,请重新命名!!!");
        }
    }
    public void DataBindList()
    {
        DropDownList1.Items.Clear();
        DataTable dt = new DataTable();
        dt.Columns.Add(new DataColumn("fileName", typeof(string)));
        DirectoryInfo dir = new DirectoryInfo(Server.MapPath(@"~\bakDataBase\"));
        foreach (FileInfo file in dir.GetFiles())
        {
            DataRow dr = dt.NewRow();
            dr[0] = file;
            dt.Rows.Add(dr);
        }
        DropDownList1.DataSource = dt;
        DropDownList1.DataTextField = "fileName";
        DropDownList1.DataBind();
    }
    protected void Button2_Click(object sender, EventArgs e)
    {
        File.Copy(Server.MapPath(@"~\bakDataBase\" + DropDownList1.SelectedItem.Text), Server.MapPath(@"~\App_Data\Test.mdb"), true);
        Response.Write("数据恢复成功!");
    }
}

posted @   Astar  阅读(1100)  评论(0编辑  收藏  举报
编辑推荐:
· 如何编写易于单元测试的代码
· 10年+ .NET Coder 心语,封装的思维:从隐藏、稳定开始理解其本质意义
· .NET Core 中如何实现缓存的预热?
· 从 HTTP 原因短语缺失研究 HTTP/2 和 HTTP/3 的设计差异
· AI与.NET技术实操系列:向量存储与相似性搜索在 .NET 中的实现
阅读排行:
· 10年+ .NET Coder 心语 ── 封装的思维:从隐藏、稳定开始理解其本质意义
· 地球OL攻略 —— 某应届生求职总结
· 提示词工程——AI应用必不可少的技术
· Open-Sora 2.0 重磅开源!
· 周边上新:园子的第一款马克杯温暖上架
点击右上角即可分享
微信分享提示