pb 9.0+ASA,請教如何進行備份與恢復?
另外備份到底備份了哪些東西?恢復又恢復了哪些?
希望高手們講解一下原理,小弟感激不盡!!!
uj5u.com熱心網友回復:
自己up!各位好心人幫幫忙!uj5u.com熱心網友回復:
Adaptive Server Anywhere(本文中簡稱ASA) 是PowerBuilder(本文中簡稱PB)自帶的資料庫管理系統,可作為小型應用系統的資料庫服務器。而資料庫的備份/恢復是一項基本的作業,要想用短短幾分鐘就完成這類程式的撰寫,能做到嗎?本文就將為大家介紹一個用PB撰寫的ASA備份/恢復程式,只需很短的時間,就可以編制完成并運用在以ASA作為資料環境的小型應用上。一 備份程式
先來看看備份程式部分的寫法。在表單上建一文本框 sle_1,用來顯示備份的檔案名,并添加兩個按鈕:cb_1(瀏覽)、cb_2(備份)。相應的事件代碼如下:
//cb_1.clicked()
string fname,name
GetfileSaveName('保存',fname,name,“db”,'資料庫備份檔案(*.1),*.1')
sle_1.text=fname
//cb_2.clicked()
string mysql,bfname
bfname=trim(sle_1.text)
bfname=left(bfname,len(bfname)-2)
mysql=“BACKUP DATABASE TO '”+bfname+“'”
execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
if sqlca.sqlcode=0 then
messagebox(“資訊提示”,'備份成功!',information!,OK!)//給出備份成功與否的相關資訊
else
messagebox(“資訊提示”,'備份失敗!',information!,OK!)
end if
我已經將GetfileSaveName('保存',fname,name,“db”,'資料庫備份檔案(*.1),*.1')
改成了GetfileSaveName('保存',fname,name,“db”,'資料庫備份檔案(*.db),*.db')
為什么保存后還是..1格式
uj5u.com熱心網友回復:
誰來幫我看看啊!uj5u.com熱心網友回復:
把mysql=“BACKUP DATABASE TO '”+bfname+“'”execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
改成
mysql=“BACKUP DATABASE TO '”+fname+“'”
execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
試試
uj5u.com熱心網友回復:
把mysql=“BACKUP DATABASE TO '”+bfname+“'”execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
改成
mysql=“BACKUP DATABASE TO '”+fname+“'”
execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
試試
uj5u.com熱心網友回復:
把mysql=“BACKUP DATABASE TO '”+bfname+“'”execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
改成
mysql=“BACKUP DATABASE TO '”+fname+“'”
execute immediate :Mysql USING SQLCA;//運用SQL陳述句立刻執行備份
試試
uj5u.com熱心網友回復:
大哥,你不是玩我嗎?uj5u.com熱心網友回復:
我這幾天正在做備份.給你看看.不過我是備份SQL的,是成功的.希望能幫到你int li_net
//資料庫完全備份
string ls_path ,ls_use
//
ls_use = 'EXEC'+'('+"'USE Studentexperiment'"+')' //建立備份的邏輯設備
EXECUTE IMMEDIATE :ls_use ;
ls_path = sle_1.text //得到路徑
SQLCA.AutoCommit = TRUE
ls_use = "EXEC sp_addumpdevice 'disk'"+" , 'Studentexperiment' , "+" '"+ls_path+"'"
EXECUTE IMMEDIATE : ls_use ; //寫到備份路徑
ls_use ="BACKUP DATABASE Studentexperiment to Studentexperiment"//備份資料庫 studentexperiment 為studentexperiment
EXECUTE IMMEDIATE : ls_use ;
ls_use = "exec sp_dropdevice 'Studentexperiment'" //洗掉邏輯設備
EXECUTE IMMEDIATE : ls_use ;
SQLCA.AutoCommit = false
if sqlca.sqlcode = 0 then
messagebox("資訊","備份成功!")
end if
轉載請註明出處,本文鏈接:https://www.uj5u.com/shujuku/117807.html
標籤:數據庫相關
