新手请教简单数据备份与恢复源码

richgod 2008-03-31 04:56:23
新手刚学PB,想备份与恢复PB9+自带ASA数据库
窗口WIN_1上放一单行文本框,有浏览,备份,恢复按钮,搜索了不少方法,弄不好,不知道该如何具体代码实现备份与恢复呢?
...全文
195 点赞 收藏 11
写回复
11 条回复
切换为时间正序
当前发帖距今超过3年,不再开放新的回复
发表回复
SKY_4K_PPM 2008-04-18
filecopy()
回复
dangerous123 2008-04-17
asa数据库的备份与恢复最好的办法就是利用文件拷贝,filecopy()
回复
richgod 2008-04-10
还是不行啊,谁有能成功恢复ASA的代码嘛?直接拷贝的也好啊,怎么写呢?
回复
lllyyymmm 2008-04-10
在恢复之前,先断开一下连接,不然人的数据库正在使用,是恢复不成功的
回复
Einsnein 2008-04-02
tmp.db 只是临时文件 路径给到数据库目录或当前目录都可以
回复
Einsnein 2008-04-02
gs_dir 是当前目录
回复
Einsnein 2008-04-01
//备份
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
//恢复
string mysql,bfname,gzname
ulong sxz=32,kb //sxz为文件的属性值,32表示可读写
boolean tmp
blob lb_backinfo
bfname=trim(sle_2.text)
bfname=left(bfname,len(bfname)-2)
mysql="restore database '"+gs_dir+"tmp.db' from '"+bfname+"'"
execute immediate :mysql using sqlca;//同样是运用sql语句来立刻执行恢复数据库的工作
if sqlca.sqlcode<>0 then
messagebox("信息提示","数据恢复失败!",information!,ok!)
return
end if
disconnect using sqlca; //断开数据库连接

messagebox("提示","数据库恢复成功,请重新登陆系统")
回复
richgod 2008-04-01
mysql="restore database '"+gs_dir+"tmp.db' from '"+bfname+"'" 这里的gs_dir 是指什么呢?
回复
winstonsu 2008-04-01
1、创建文件夹
string ls_dir

ls_dir = GetCurrentDirectory ( ) + '\' + string(today(),'yyyymmdd') + string(now(),'hhmmss')

if not DirectoryExists(ls_dir) then
CreateDirectory(ls_dir)
end if

2、恢复可以给一个选择备份文件的对话框,然后用FileCopy ( sourcefile, targetfile {, replace } )

回复
richgod 2008-03-31
上面的备份代码挺好用的.要是备份前可以自动建一个当天日期+时间的文件夹分别保存就好了.恢复代码怎么写呢??
回复
orcd 2008-03-31
备份
ls_bfsql = "BACKUP DATABASE DIRECTORY '"+ ls_pathname+"'"
oldpointer = SetPointer(hourglass!)
Execute Immediate :ls_bfsql Using sqlca;

还原直接考文件吧
回复
相关推荐
发帖
PowerBuilder
创建于2007-09-28

869

社区成员

PowerBuilder 相关问题讨论
申请成为版主
帖子事件
创建了帖子
2008-03-31 04:56
社区公告
暂无公告