以文本方式查看主题

-  Foxtable(狐表)  (http://foxtable.com/bbs/index.asp)
--  专家坐堂  (http://foxtable.com/bbs/list.asp?boardid=2)
----  [求助]cmd.ExecuteNonQuery() 会不会出现执行不成功的情况?  (http://foxtable.com/bbs/dispbbs.asp?boardid=2&id=43225)

--  作者:jiskin
--  发布时间:2013/12/2 16:25:00
--  [求助]cmd.ExecuteNonQuery() 会不会出现执行不成功的情况?
cmd.CommandText = "Update {Delivery_xxx} Set Editor = NULL Where [_Identify] = " & Tables("Delivery Management_Delivery_xxx").Current("_Identify") & ""
cmd.ExecuteNonQuery()

请问下,这里的cmd.ExecuteNonQuery()是不是会出现执行失败的情况?
如果会 增加个loop 是不是就OK了?
因为今天测试的时候 发现 update没成功

--  作者:Bin
--  发布时间:2013/12/2 16:26:00
--  
当然有可能会执行不成功,所以一般都要判断一下返回值,得知是否返回成功.


--  作者:jiskin
--  发布时间:2013/12/2 16:38:00
--  
以下是引用Bin在2013-12-2 16:26:00的发言:
当然有可能会执行不成功,所以一般都要判断一下返回值,得知是否返回成功.

 

如果改成

 

do

cmd.CommandText = "Update {Delivery_xxx} Set Editor = NULL Where [_Identify] = " & Tables("Delivery Management_Delivery_xxx").Current("_Identify") & ""
if cmd.ExecuteNonQuery() > 0 then
exit do
end if
loop
 
是否OK

--  作者:Bin
--  发布时间:2013/12/2 16:47:00
--  
这样一旦出现问题就会死循环 程序会卡死  因为一直执行不成功返回值都不会大于0.
--  作者:jiskin
--  发布时间:2013/12/2 16:56:00
--  
以下是引用Bin在2013-12-2 16:47:00的发言:
这样一旦出现问题就会死循环 程序会卡死  因为一直执行不成功返回值都不会大于0.

 

那有啥折中的 指点下吧 大哥


--  作者:Bin
--  发布时间:2013/12/2 16:58:00
--  
只能执行不成功就弹出错误提示

或者指定循环次数,比如循环3次不成功就弹出错误提示,  总不能不成功就一直执行下去.肯定是有问题才执行不成功,你一直执行也没用啊.