pb9.0如何实现数据库备份和还原

rusheng2 2008-01-17 11:38:13
pb9.0如何实现数据库备份和还原 请说详细点 最好有个小例子 我用的数据库是SQL SERVER2000 谢谢各位了!
我的邮箱:rs_wanghan@126.com
...全文
216 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
uinsbq 2008-05-06
  • 打赏
  • 举报
回复
终于找到了 谢谢啊
Tiger0305 2008-02-16
  • 打赏
  • 举报
回复
其实做成定时备份是最好
dawugui 2008-01-19
  • 打赏
  • 举报
回复
要添加一个button控件或在其他控制里面写.
dawugui 2008-01-17
  • 打赏
  • 举报
回复
备份和恢复SQL-SERVER2000数据库 

如何在PB 中备份 SQL SERVER 2000 的数据库?
设置备份设备:
/****************************************************************/
string ls_execSql

ls_execSql = "sp_addumpdevice 'disk','HC_JXC','C:\BACKUP\HC_JXC.bak'"
execute immediate :ls_execSql using sqlca;

if sqlca.sqlcode <> 0 then
  messagebox("设置设备","设备已经存在,不需要设置。")
else
  messagebox("设置设备","设置设备成功!")
end if
/****************************************************************/

数据库备份
/****************************************************************/
string ls_execSql

ls_execSql = "backup database HC_JXC to HC_JXC"
execute immediate :ls_execSql using sqlca;

if sqlca.sqlcode <> 0 then
  messagebox("备份数据","数据备份失败,可能数据库正在使用,或者数据库没有连接!")
else
  messagebox("备份数据","数据备份成功!")
end if
/****************************************************************/

数据库恢复
/****************************************************************/
string ls_execSql

ls_execSql = "use master restore database HC_JXC from HC_JXC"
execute immediate :ls_execSql using sqlca;

if sqlca.sqlcode <> 0 then
  messagebox("恢复数据","恢复数据失败,可能数据库正在使用,或者数据库没有连接!")
else
  messagebox("恢复数据","恢复数据成功!")
end if

worldly_wind 2008-01-17
  • 打赏
  • 举报
回复
string ls_server_path
string ls_database,ls_backup
string ls_filename

SetPointer(HourGlass!)
SQLCA.AutoCommit = TRUE

ls_database = '需要备份的数据库'

ls_filename = 'databak' + string(today(),'yyyymmddhhmmss')

ls_server_path = '备份路径信息'
if ls_server_path = "" then
messagebox('提示',"请先指定要备份的数据文件的路径!")
return
end if
ls_server_path = ls_server_path + '\' + '数据库文件名' + '.dat'
ls_backup = "exec sp_addumpdevice 'disk', '"+ls_filename+"' ,'"+ls_server_path+"' " + &
+ "backup database "+ls_database+"" + " to "+ls_filename+""

this.enabled = false
EXECUTE IMMEDIATE :ls_backup;

if sqlca.sqlcode = 0 then
messagebox("提示","备份完成")
this.enabled = true
else
messagebox("提示","备份失败"+sqlca.sqlerrtext)
end if
cenlifeng 2008-01-17
  • 打赏
  • 举报
回复
弱弱的问下:这些脚本语言应该写在哪里事件中呢?是不是要添加一个button控件,然后在相应的事件中写入相应的代码?
XBQ4724 2008-01-17
  • 打赏
  • 举报
回复
UPUP~~~各位说得很详细了~~就是在PB直接调用SQL语句而已~~

752

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧