/// <summary>
/// 备份Access数据库
/// </summary>
/// <param name="srcPath">要备份的数据库绝对路径</param>
/// <param name="aimPath">备份到的数据库绝对路径</param>
/// <returns></returns>
public bool Backup(string srcPath, string aimPath)
{
if (!File.Exists(srcPath))
{
throw new Exception("源数据库不存在,无法备份");
}
try
{
File.Copy(srcPath, aimPath, true);
}
catch (IOException ixp)
{
return false;
throw new Exception(ixp.ToString());
}
return true;
}
/// <summary>
/// 还原Access数据库
/// </summary>
/// <param name="bakPath">备份的数据库绝对路径</param>
/// <param name="dbPath">要还原的数据库绝对路径</param>
public bool RecoverAccess(string bakPath, string dbPath)
{
if (!File.Exists(bakPath))
{
throw new Exception("备份数据库不存在,无法还原");
}
try
{
File.Copy(bakPath, dbPath, true);
}
catch (IOException ixp)
{
return false;
throw new Exception(ixp.ToString());
}
return true;
}
//备份的事件及获取备份路径和还原的路径
protected void Button1_Click(object sender, EventArgs e)
{
string path = HttpContext.Current.Server.MapPath("../App_Data/df.mdb");
string pathdata = path ;
string pathback = path.Substring(0, path.Length - 15) + @"dataBack\df.mdb";
if (Backup(pathdata, pathback))
{
Label3.Text = "备份成功!";
}
else
{
Label3.Text = "备份失败!";
}
}
//还原的事件及获取备份路径和还原的路径
protected void Button2_Click(object sender, EventArgs e)
{
string path = HttpContext.Current.Server.MapPath("../App_Data/df.mdb");
string pathdata = path;
string pathback = path.Substring(0, path.Length - 15) + @"dataBack\df.mdb";
if (RecoverAccess(pathback, pathdata))
{
Label3.Text = "还原成功!";
}
else
{
Label3.Text = "还原失败!";
}
}