备份sql

 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

setup:
/****************************************************************/
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
/****************************************************************/
backup:
/****************************************************************/
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
/****************************************************************/
restore:
/****************************************************************/
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

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值