主题:如何实现数据库备份呀
baiyuxiang
[专家分:0] 发布于 2006-04-24 09:11:00
我想用pb实现数据备份与恢复
请各位高手指点一下吧
回复列表 (共4个回复)
沙发
aosigey [专家分:0] 发布于 2006-06-01 15:11:00
ls_use = "EXEC sp_helpdevice 'hrms'"//显示可用设备
EXECUTE IMMEDIATE :ls_use ;
SetPointer(HourGlass!)//---开始备份-
sqlca.autocommit=true
string ls_execSql
//打开设备
ls_execSql = "EXEC sp_addumpdevice 'disk',"+sqlca.database+","+pathnam //别忘了加EXEC
execute immediate :ls_execSql using sqlca;
string sql
sql=" backup database "+ sqlca.database +" to disk='"+pathnam+"'"
execute immediate :Sql using sqlca;
sqlca.autocommit=FALSE
SetPointer(Arrow!)
If sqlca.sqlcode=0 Then
messagebox('备份信息提示','备份数据库成功!~r~n~n备份的文件存储在 '+pathnam)
Else
messagebox('备份提示', "备份数据库失败,原因为"+sqlca.sqlerrtext)
End if
板凳
岚山 [专家分:320] 发布于 2006-06-03 20:47:00
我是这样做的
string backup
string pathstring
pathstring = sle_1.text
messagebox('系统提示','请先关闭所有窗口!',Exclamation!)
if pathstring = '' then
messagebox('系统提示','请您输入备份数据库的文件名称!')
return
end if
disconnect USING sqlca;
SQLCA.DBMS ="ODBC"
SQLCA.AutoCommit = false
SQLCA.DBParm = "ConnectString='DNS=persondb;UID=sa;PWD='"
connect using sqlca;
backup = "backup database dmt to disk = " + "'" + pathstring + "'";
EXECUTE IMMEDIATE :backup;
if sqlca.sqlcode = 0 then
messagebox('系统提示','恭喜您,数据库备份成功!')
this.Enabled = false
else
messagebox("系统提示","出错了+" + sqlca.sqlerrtext)
end if
disconnect;
SQLCA.DBParm = "ConnectString='DNS=persondb;UID=sa;PWD='"
connect;
return
3 楼
hujian0517 [专家分:0] 发布于 2006-06-08 20:50:00
上一条 备份什么文件 又备份到哪啊
4 楼
岚山 [专家分:320] 发布于 2006-06-13 18:15:00
备份数据库呀,备份为*.dat文件呀
我来回复