由于本人一开始学习 数据库 是sql sever ,现在开发用access 2003,所以在做 数据库 的 备份 与 还原 时,第一意识就是利用sql语句来实现,但出现了错误,说“无效的inserted ,update.delete,select”,我就意识到可能是不支持backup和restore这样的sql关键字,
由于本人一开始学习 数据库 是sql sever ,现在开发用access 2003,所以在做 数据库 的 备份 与 还原 时,第一意识就是利用sql语句来实现,但出现了错误,说“无效的inserted ,update.delete,select”,我就意识到可能是不支持backup和restore这样的sql关键字,可能在access中不支持,但自己感觉还是不相信,从网上和图书馆查找利用sql语句来实现的信息,可是都未查找到,后来网上有些人说access不支持SQL语句 备份 ,这和我此时的想法一致,于是就利用文件的复制来 备份 与恢复。很简单哦。关键代码如下:
备份 :
string dataBasePath = Application.StartupPath + "\\database\\DB.mdb";
string beiFenPath;
private void buttonX2_Click(object sender, EventArgs e)
{
if (textBox1.Text.ToString().Trim() == "" || textBox2.Text.ToString().Trim() == "")
{
MessageBox.Show("输入信息不能为空");
return;
}
if (!File.Exists(dataBasePath))
{
throw new Exception("源 数据库 不存在,无法 备份 ");
}
beiFenPath = textBox1.Text.ToString().Trim();
File.Copy(dataBasePath, beiFenPath + "\\" + textBox2.Text + ".mdb", true);
MessageBox.Show(" 数据库 备份 成功");
}
还原 : beiFenPath = textBox1.Text.ToString().Trim();
if( !File.Exists(beiFenPath) )
{
throw new Exception(" 备份 数据库 不存在,无法修复");
}
try
{
//为了没有 备份 当前 数据库 ,所以在 还原 前,先 备份 一下现在的 数据库
File.Copy(dataBasePath, Application.StartupPath+"\\beifen\\"+"DB.mdb",true);
//如果有重名文件 不提示 ,直接替换
File.Copy(beiFenPath,dataBasePath, true );
MessageBox.Show(" 数据库 还原 成功");
}
catch
{
MessageBox .Show (" 数据库 还原 失败");
}
查看更多关于access数据库备份与还原问题的详细内容...