ADOQury+DBGrid,如何用代码置grid的一列全为0。 我用 updata set ,它说我不能返回多个数据我用 grid.field['aaa']:='0' 用dataset,他说不能改,没打开。我看到网上有关数据携带的操作,不回这么麻烦吧。我刚刚接触d,大家帮忙。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 代码帖出来看看用UPDATE更新的时候是不是用open而不是用EXECSQL? 很简单,你在adoquery的字段中添加一个计算字段 a, type=integer,在adoquery的onCalcFields()事件中写入: a.value:=0; 用update set 时把ADOQuery.Active:=True;或ADOQuery.open;改为ADoQuery.ExecSql即可 哇,好快啊代码在屋里,我还在上班,郁闷在gdb中,估计 lzy6204(想闭门修炼) 和 lcxhjg() 说的对,嘿嘿。 zhangheaaa(竹你理解错我的意思了。等下班了我回去试试。 对了,execsql和open有什么区别?? execsql和open有什么区别??open是打来数据集,你得到数据execsql是执行某项操作,比如修改,删除、添加,完成后你什么都得不到,如果原来有数据集,除了添加和删除的纪录,其他根本不变 你是要改变数据库一列的值,还是Grid一列的值? with DataModule1.ADOQuery1 do begin SQL.Clear; SQL.Add('Update yourTable '); //SQL文 SQL.Add(' Set field1=''0'' '); ExecSQL; //執行end; 有返回值要用OPEN,否则用EXECSQL。我做的系统:http://www.epidn.com/ execsql和open有什么区别??execsql执行没有返回记录的sql语句,使用时,active:=false,不然,出错.open执行有返回记录的sql语句,使用时,置active:=true. query1.first;for i:=0 to query1.recordcount-1 do begin query1.edit; query1.fieldbyname('aa').asstring:='0'; query1.post; query1.next; end;或用缓存更新。 关于报表 PB9.0开发的大中型连锁超市POS系统源程序出售 录音时,显示即时播形图,求助 广交用delphi开发的朋友 做三层结构时前端传中文字时被丢掉,不知道什么原因? 請問各位大俠,CORBA的問題!(重謝) shaver遇到问题了,熟悉Qreport的朋友请帮忙看看! 送分!各位近来,保证人人有 用Delphi怎样才能写出象Foxmail一样的表单调用。 如下的代码可以显示出ie的“历史”浏览窗口,可是无法得到具体历史的url,使用Dispname属性无法得到。谢谢 socket初级问题 打印时如何判断系统已经与网络打印机连接
用UPDATE更新的时候是不是用open而不是用EXECSQL?
在adoquery的onCalcFields()事件中写入:
a.value:=0;
把ADOQuery.Active:=True;或ADOQuery.open;
改为ADoQuery.ExecSql即可
代码在屋里,我还在上班,郁闷在gdb中,估计 lzy6204(想闭门修炼) 和 lcxhjg() 说的对,嘿嘿。 zhangheaaa(竹你理解错我的意思了。等下班了我回去试试。
open是打来数据集,你得到数据
execsql是执行某项操作,比如修改,删除、添加,完成后你什么都得不到,如果原来有数据集,除了添加和删除的纪录,其他根本不变
SQL.Clear;
SQL.Add('Update yourTable '); //SQL文
SQL.Add(' Set field1=''0'' ');
ExecSQL; //執行
end;
http://www.epidn.com/
execsql执行没有返回记录的sql语句,使用时,active:=false,不然,出错.
open执行有返回记录的sql语句,使用时,置active:=true.
for i:=0 to query1.recordcount-1 do
begin
query1.edit;
query1.fieldbyname('aa').asstring:='0';
query1.post;
query1.next;
end;或用缓存更新。