access数据库备份与还原问题
由于本人一開始學習數據庫是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数据库备份与还原问题的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: translation翻译插件下载及翻译
- 下一篇: 学习笔记 - Unix命令大全