十万火急!!!在PB程序中怎样实现ASA7的数据备份与恢复????????????

时间:2021-10-29 06:56:59
我是个PB菜鸟,现在做的这个软件就差数据备份与恢复没做了!!我在网上也搜索了很多关于此类的问题,可是太多,也太杂,不知道具体该怎么做?我以前用VB时,备份都是用filecopy函数做的,就是把数据库copy到另一个目录下。而PB中有的朋友用filecopy,也还有用什么run命令,我真搞不清了,到底怎么才能快速解决这个问题,我现在时间很紧啊,高手们帮帮我吧!

14 个解决方案

#1


dbbackup 命令。

#2


UP 
关注

#3


大家能说的详细点吗

#4


dbcc. 
dbbackup

#5


先由用户选择备份的路径,然后直接使用filecopy命令复制文件即可
如果要减少系统资源占用的话,可以对数据库文件进行压缩复制(比如使用rar执行程序),这样可能就要使用到run命令了!

#6


楼上大哥,那用run命令的话,怎么恢复呢?
我刚才下了一个通用的备份恢复程序,可我用不好使,你能帮我调试一下吗/??
地址是:www.hldtour.com/fd.rar

#7


请参考下面语句:
string ls_path = "c:\backup",ls_exe
integer li_result

If GetFolder( "请选择保存路径", ls_path ) <> 1 Then return

ls_exe = 'dbbackup -c "eng=wgj;dbn=sbll;uid=DBA;pwd=SQL" -q -y '+ ls_path + ' -obklog.txt'
li_result = run(ls_exe,Minimized!)

If li_result <> 1 Then
MessageBox('提示','保存失败!')
End If


//请将dbbackup.exet 和dbtool7.dll  COPY至应用程序所在目录下,这种方式可以进行在线式备份。
具体请从SYBASE我网站下载ASA7 Chinese ASA Database Administration Guide.pdf 等教材

#8


ls_exe = 'dbbackup -c "eng=wgj;dbn=sbll;uid=DBA;pwd=SQL" -q -y '+ ls_path + ' -obklog.txt'中的eng=wgj;dbn=sbll是什么意思啊???' -obklog.txt'又是什么啊??

#9


好象原来有这方面的文章,找一个以前的贴子先

#10


我已经用信息的方式告诉您用API函数来获得当前目录,不知楼主注意了没有?

#11


1.用SQL语句
  CREATE [ COMPRESSED | EXPANDED ] DATABASE new-db-file-name 
   ... FROM old-db-file-name

   例如
   CREATE COMPRESSED DATABASE 'C:\\compress.db'
        FROM 'full.db'  

    CREATE EXPANDED DATABASE 'C:\\full.db'
   FROM 'compress.db'

2.用工具

   dbshrink.exe [ switches ] database-file [ compressed-database-file ]

    dbexpand.exe [ switches ] compressed-database-file [ database-file ]


#12


up

#13


run("dbbackup -c ~"uid=dba;pwd=sql; dbf=C:\Program Files\Sybase\SQL Anywhere 7\asademo.db~" " &
+ sle_1.text)和
run( 'dbbackup -c -q - y "eng=servername;dbn=dbname;uid=DBA;pwd=SQL" '+sle_1.text)
有什么区别呢???我怎么才能把上面dbf变成当前程序所在文件夹啊

#14


run("dbbackup -c ~"uid=dba;pwd=sql; dbf=C:\Program Files\Sybase\SQL Anywhere 7\asademo.db~" " &
+ sle_1.text)和
run( 'dbbackup -c -q - y "eng=servername;dbn=dbname;uid=DBA;pwd=SQL" '+sle_1.text)
有什么区别呢???我怎么才能把上面dbf变成当前程序所在文件夹啊

#1


dbbackup 命令。

#2


UP 
关注

#3


大家能说的详细点吗

#4


dbcc. 
dbbackup

#5


先由用户选择备份的路径,然后直接使用filecopy命令复制文件即可
如果要减少系统资源占用的话,可以对数据库文件进行压缩复制(比如使用rar执行程序),这样可能就要使用到run命令了!

#6


楼上大哥,那用run命令的话,怎么恢复呢?
我刚才下了一个通用的备份恢复程序,可我用不好使,你能帮我调试一下吗/??
地址是:www.hldtour.com/fd.rar

#7


请参考下面语句:
string ls_path = "c:\backup",ls_exe
integer li_result

If GetFolder( "请选择保存路径", ls_path ) <> 1 Then return

ls_exe = 'dbbackup -c "eng=wgj;dbn=sbll;uid=DBA;pwd=SQL" -q -y '+ ls_path + ' -obklog.txt'
li_result = run(ls_exe,Minimized!)

If li_result <> 1 Then
MessageBox('提示','保存失败!')
End If


//请将dbbackup.exet 和dbtool7.dll  COPY至应用程序所在目录下,这种方式可以进行在线式备份。
具体请从SYBASE我网站下载ASA7 Chinese ASA Database Administration Guide.pdf 等教材

#8


ls_exe = 'dbbackup -c "eng=wgj;dbn=sbll;uid=DBA;pwd=SQL" -q -y '+ ls_path + ' -obklog.txt'中的eng=wgj;dbn=sbll是什么意思啊???' -obklog.txt'又是什么啊??

#9


好象原来有这方面的文章,找一个以前的贴子先

#10


我已经用信息的方式告诉您用API函数来获得当前目录,不知楼主注意了没有?

#11


1.用SQL语句
  CREATE [ COMPRESSED | EXPANDED ] DATABASE new-db-file-name 
   ... FROM old-db-file-name

   例如
   CREATE COMPRESSED DATABASE 'C:\\compress.db'
        FROM 'full.db'  

    CREATE EXPANDED DATABASE 'C:\\full.db'
   FROM 'compress.db'

2.用工具

   dbshrink.exe [ switches ] database-file [ compressed-database-file ]

    dbexpand.exe [ switches ] compressed-database-file [ database-file ]


#12


up

#13


run("dbbackup -c ~"uid=dba;pwd=sql; dbf=C:\Program Files\Sybase\SQL Anywhere 7\asademo.db~" " &
+ sle_1.text)和
run( 'dbbackup -c -q - y "eng=servername;dbn=dbname;uid=DBA;pwd=SQL" '+sle_1.text)
有什么区别呢???我怎么才能把上面dbf变成当前程序所在文件夹啊

#14


run("dbbackup -c ~"uid=dba;pwd=sql; dbf=C:\Program Files\Sybase\SQL Anywhere 7\asademo.db~" " &
+ sle_1.text)和
run( 'dbbackup -c -q - y "eng=servername;dbn=dbname;uid=DBA;pwd=SQL" '+sle_1.text)
有什么区别呢???我怎么才能把上面dbf变成当前程序所在文件夹啊