在程序中备份数据库中碰到的疑惑!WAITING .... ....

dingzhaofeng 2003-07-21 09:57:37
代码如下:

////////////////////////////////////////////////////////////////
string ls_sql

ls_sql = "BACKUP DATABASE wygl TO DISK 'E:\PROGRAM\WYGL\WYGL\BakData\wyglnew2'"

EXECUTE IMMEDIATE :ls_sql;

if sqlca.sqlcode = 0 then
messagebox('提示信息','备份完毕!')

else
if SQLCA.Sqlcode=-1 then
messagebox('提示信息','备份错误!')
end if
end if
//////////////////////////////////////////////////////////////

错误类型为:3021
不能在事务内部执行备份或还原操作。

不知道是为何故!请赐教!
...全文
91 4 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
4 条回复
切换为时间正序
请发表友善的回复…
发表回复
李洪喜 2003-07-21
  • 打赏
  • 举报
回复
这种方法根本不行,我已经试过很多次了。如果有更好的方法,请MAIL TO ME 。
lhx1977@163.net
谢谢。
119119 2003-07-21
  • 打赏
  • 举报
回复
连接master数据库然后
connect;
if sqlca.sqlcode<>0 then
disconnect;
messagebox('提示','连接数据库失败,详细信息如下:~r~n~r~n'+str_tmp)
return
end if
st_1.text="~r~n正在备份数据库,这大约需要几分钟时间!"
str_sql="BACKUP DATABASE "+数据库名+" to disk='"+备份路径与文件名+"'"
EXECUTE IMMEDIATE :str_sql;
if sqlca.sqlcode <> 0 then
disconnect;
messagebox('提示','备份数据库时出错')
return
else
disconnect;
messagebox("提示","数据库备份完毕!")
end if
dingzhaofeng 2003-07-21
  • 打赏
  • 举报
回复
都不行了呀!

已经断掉了,然后连到master 上了。
119119 2003-07-21
  • 打赏
  • 举报
回复
你好像应该先把数据库的连接断掉,然后再备份数据.

我这边有个备份的原码,你要么.或者你搜索以前的帖子也很多的.

1,108

社区成员

发帖
与我相关
我的任务
社区描述
PowerBuilder 相关问题讨论
社区管理员
  • 基础类社区
  • WorldMobile
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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