以文本方式查看主题 - Foxtable(狐表) (http://foxtable.net/bbs/index.asp) -- 专家坐堂 (http://foxtable.net/bbs/list.asp?boardid=2) ---- [求助]RaiseDataColChanged如何能提高刷新效率 (http://foxtable.net/bbs/dispbbs.asp?boardid=2&id=10239) |
|
-- 作者:ddlzq -- 发布时间:2011/5/26 19:21:00 -- [求助]RaiseDataColChanged如何能提高刷新效率 If e.DataCol.Name = "内部合同号" Dim cmd As New SQLCommand Dim dr As DataRow = e.DataRow cmd.C cmd.CommandText = "SELECT Max(生产_生产预计完成时间) From {供应链管理表} Where [供应链部_内部订单号] = \'" & dr("内部合同号")& "\'" If cmd.ExecuteScalar() <> Nothing Then dr("订货日期记录_生产预计完成时间") = cmd.ExecuteScalar() End If Else End If 按钮刷新 DataTables("订货记录表").DataCols("内部合同号").RaiseDataColChanged() ---------------------------------- 各位老师,我做了个按钮,见代码[按钮刷新],为何一万九千行,刷一次列要近十分钟尼,有老师有啥好办法啊
|
|
-- 作者:mr725 -- 发布时间:2011/5/26 19:34:00 -- 每行只要0.032秒,速度还可以了,只是你为何要这样处理呢? |
|
-- 作者:czy -- 发布时间:2011/5/26 20:01:00 -- 内部合同号都是唯一的吗?如果不是唯一的,这样的重算没什么意义。 如果速度真的很慢,又需要重算你可以考虑用ExecuteNonQuery方法 |
|
-- 作者:狐狸爸爸 -- 发布时间:2011/5/26 22:38:00 -- 这样快不了的,应该可以用SQL语句一次搞定,去专业的SQL论坛问问手,csdn上的SQL SERVER栏目上就有不少高手的,下面的肯定不行,只是一个思路: Update {订货记录表} Set [订货日期记录_生产预计完成时间] = (SELECT Max(生产_生产预计完成时间) From {供应链管理表} Where [供应链部_内部订单号] = 订货记录表.内部合同号) |
|
-- 作者:ddlzq -- 发布时间:2011/5/27 13:38:00 -- Post By:2011-5-26 19:34:00 [只看该作者]
|
|
-- 作者:ddlzq -- 发布时间:2011/5/27 13:39:00 -- Post By:2011-5-26 20:01:00 [只看该作者]
|
|
-- 作者:ddlzq -- 发布时间:2011/5/27 13:40:00 -- Post By:2011-5-26 22:38:00 [只看该作者]
|