//備份數據庫,到c:/backup目錄下面
string ls_backup
CreateDirectory(sle_1.text)
ls_backup="BACKUP DATABASE DIRECTORY '"+sle_1.text+"' TRANSACTION LOG RENAME"
execute immediate : ls_backup;
if sqlca.sqlcode<>0 then
messagebox("備份數據錯誤","請確定文件夾是否存在!"+sqlca.sqlerrtext)
else
messagebox("數據備份成功","OK,數據備份成功,放在'C:/BACKUP/'目錄下")
end if
-------------------------------------------------------------------
//恢復數據庫,程序拷貝
string ls_filename,named,ls_ml,gs_dir
long ll_value
string mtext
//得到當前目錄
if messagebox('提示','恢復數據庫,會覆蓋現有數據庫,且無法修復,是否繼續?',&
question!,yesno!,2) = 2 then return
ll_value = GetFileopenName("請選擇要恢復的數據庫文件",&
ls_filename, named,"backup","數據庫文件(*.db),*.db")
gs_dir=GetCurrentDirectory()
if ll_value <> 1 then return
ChangeDirectory(gs_dir)
disconnect;
setpointer(hourglass!)
//////讀取文件
integer li_FileNum
boolean lb_del
ls_ml=gs_dir +"/bookmanager.db"
//拷貝文件
li_FileNum = FileCopy(ls_filename, ls_ml, true)
choose case li_FileNum
case 1
messagebox("系統提示","已經成功恢復數據庫!",Exclamation!)
case -1
messagebox("系統提示","不能打開源文件,恢復失敗!",Exclamation!)
case -2
messagebox("系統提示","不能寫入目標文件,恢復失敗!",Exclamation!)
end choose
setpointer(arrow!)
//重新連接數據庫
connect ;