ExecSQL 如果判断执行成功?
看了公司的一段代码我直接崩溃掉了。我想死.....你们怎么看?
if query1.active=true then query1.close;
query1.sql.clear;
query1.sql.add('select * from zy_dxsfls where sfry=:czy');
query1.parambyname('czy').asstring:=s_yhmc;
query1.open;
if query1.recordcount>0 then
begin
if query1.active then query1.close;
query1.sql.clear;
query1.sql.add('delete zy_dxsfls where sfry=:czy');
query1.parambyname('czy').asstring:=s_yhmc;
query1.ExecSQL;
if query1.active then query1.close;
query1.sql.clear;
query1.sql.add('select * from zy_dxsfls where sfry=:czy');
query1.parambyname('czy').asstring:=s_yhmc;
query1.open;
end;
查询完之后判断有没有值,然后在删除掉,然后再查询掉?
为什么不直接在删除的地方做个判断呢?
求指教~~
[解决办法]
ExecSQL有个返回值,大于0则表示执行成功,=0则表示没有结果集受影响。
[解决办法]
20分救不了你,这个要干活:)
[解决办法]
呵呵,估计这个代码也是被改了N次才出现这个情况的。
猜测目的应该是,显示和操作用的是同一个query1,所以删除了要查询一次,以便把结果展示出来,不查询被删除的记录会任然存在
[解决办法]
看到这样的表名我就迷糊了。。。。。。
[解决办法]
学生的作品吗?
[解决办法]
那你就慢慢的写函数吧,能够吧函数写好,以后你就会轻松一些了。前期工作还是要做的,不要怕麻烦,
[解决办法]
个人觉得delphi这几年唯一留下的就是封装了一些常用的函数
[解决办法]
是哪家公司啊?是不是州五山路?
[解决办法]
写这个代码的人应该世外高人,很多公司开发完后不是要源代码么,这个就挺好。
[解决办法]
有问题吗?看代码得先熟悉业务逻辑,就算是自己写的代码,过了一段时间再看,自己也会崩溃的。对已有程序维护的最重要一点,是稳定,不是优化