抢分啦:怎么在备份(恢复)数据库时加个进度条?

cmsoft 2002-05-22 08:57:10
由于数据量很大,所以在备份(恢复)时很慢。为了做到人性化操作,怎么在备份(恢复)数据库时加个进度条?
...全文
10 点赞 收藏 13
写回复
13 条回复
切换为时间正序
请发表友善的回复…
发表回复
tomjoule 2002-05-22
同意最高层的:在循环中将ProgressBar的Max属性值
回复
年糕 2002-05-22
这必须用到线程,比较难实现
回复
windancer 2002-05-22
但是怎么在备份的时候设置progressbar的value呢,根据备份的记录数吗?
回复
iamluodong 2002-05-22
根据备份设备的大小,备份/恢复类型,设置Max值
回复
lphonex 2002-05-22
你可以这样:

Dim cmm As New ADODB.Command
SaveUrl = frmMain.CommonDialog1.FileName
sql = "Backup database jxc to Disk='" & SaveUrl & "'"

With cmm
.ActiveConnection = Gadocn_app '(你应该把它定义为ADODB.CONNECTION 吧)

.CommandText = strsql

.Execute , , adAsyncExecute

Lbl.Visible = True
Do While .State = adStateExecuting
DoEvents
Loop

Unload Me
End With
回复
water_j 2002-05-22
你用什么方法备份(恢复)数据库?
如果是用SQL SERVER提供的对象中里面有个事件。。。COMPLETE什么的
在里面使用ProgressBar控件就行!
回复
cmsoft 2002-05-22
不能解决吗?我用一个窗体代替进度条来实现它,不过不行啊,我的代码是这样的,请看看
Private Sub Cmd_Bak_Click()
Dim Sql As String, Rs As New ADODB.Recordset
Dim SaveUrl As String
Cmd_Bak.Visible = False
Cmd_Cancel.Visible = False
Lbl.Visible = True
SaveUrl = frmMain.CommonDialog1.FileName
Sql = "Backup database jxc to Disk='" & SaveUrl & "'"

Set Rs = Gadocn_app.Execute(Sql)
Set Rs = Nothing
Gadocn_app.Close

Unload Me

End Sub


我用让Lbl.Visible = True
Lbl里的内容显示出来,等数据备份完也再unload me
而我的还没备份完就unload me 了,怎样在备份完了后unload me啊?
回复
cmsoft 2002-05-22
我怎样在CommonDialog1确定后呼出别外一个窗体呢?
回复
daryl715 2002-05-22
可以检查备份的多少,来决定value值
比如说复制的记录数
回复
cmsoft 2002-05-22
备份数据就是一个SQL语句,怎会有循环啊?
回复
ql_mf 2002-05-22
在循环中将ProgressBar的Max属性值设置微循环次数
回复
cmsoft 2002-05-22
怎一个动画法?给点提示先
回复
my_yier 2002-05-22
为什么不能用一个动画来表示呢?MS不是用一个手电筒来查找某些东西吗???
回复
发动态
发帖子

1180

社区成员

VB 数据库(包含打印,安装,报表)
申请成为版主
社区公告
暂无公告