以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.net/bbs/index.asp)
--  专家坐堂  (http://foxtable.net/bbs/list.asp?boardid=2)
----  [求助]UPDATE的时候FT没反应  (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=44235)

--  作者:wuxianzuoji41
--  发布时间:2013/12/26 10:10:00
--  [求助]UPDATE的时候FT没反应

点击一个窗口按钮运行如下

 

Dim cmd As New SQLCommand
cmd.CommandText =
"UPDATE {订单} SET 折扣 = 0.2 WHERE 数量 > 500"

cmd.ExecuteNonQuery()

如果数据量比较大,更新的时间比较久,这个时候FT是没有任何反应的

1、可以实现,这个过程有一个进度条一直显示这个更新的进度吗

2、可以实现更新过程中用一个单独的线程,不影响FT其他操作吗,否则只能干等着


--  作者:Bin
--  发布时间:2013/12/26 10:15:00
--  
1.不可以.
2.可以.

全局代码

 public Sub UpdateSQL()
     Dim cmd As New SQLCommand
   cmd.CommandText = "UPDATE {订单} SET 折扣 = 0.2 WHERE 数量 > 500"
   cmd.ExecuteNonQuery() 
 end Sub

按钮代码

            Dim th As System.Threading.Thread = New System.Threading.Thread(AddressOf UpdateSQL)
            th.IsBackground = True
            th.Start()

--  作者:狐狸爸爸
--  发布时间:2013/12/26 10:21:00
--  
第一个问题,显示进度没有办法,但是可以自己来个gif动画或者来回的滚动条,提示用户正在更新中
--  作者:wuxianzuoji41
--  发布时间:2013/12/26 10:27:00
--  
以下是引用Bin在2013-12-26 10:15:00的发言:
1.不可以.


 public Sub UpdateSQL()
     Dim cmd As New SQLCommand
   cmd.CommandText = "UPDATE {订单} SET 折扣 = 0.2 WHERE 数量 > 500"
   cmd.ExecuteNonQuery() 
 end Sub

按钮代码

            Dim th As System.Threading.Thread = New System.Threading.Thread(AddressOf UpdateSQL)
            th.IsBackground = True
            th.Start()

 

bin,2 的解决方法,要写在全局代码,可以写在函数里吗

 

[此贴子已经被作者于2013-12-26 10:27:14编辑过]

--  作者:Bin
--  发布时间:2013/12/26 10:29:00
--  
要写在全局代码