关于DBGRID的问题,很简单,请指教,有原代码!

ltz 2001-10-17 09:50:13
我用一个TABLE和DBGRID连接,显示数据。这样的目的是可以让DBGRID编辑,可是我在DBGRID的ColExit事件中写了这样的数据:
qry_auto.Close;
qry_auto.SQL.text:='select code,name,jsgs from jisuan_gsb where code<>''D'' and code<>''C''';
qry_auto.Open;
while not qry_auto.eof do
begin
v_jsgs:=qry_auto.fieldbyname('jsgs').asstring;
qry_js.Close;
qry_js.SQL.text:='update '+v_table+' set '+v_jsgs;
qry_js.ExecSQL;
qry_auto.Next;
end;
我再在DGRID中操作数据时,有时会出现这样的错误:couldn't peroform the edit
because another user change the record;
还有一个字段定义了NUMBER(8,2),但是我如果出入的数据超出这个范围也报错,该如何处理啊?
...全文
197 17 打赏 收藏 转发到动态 举报
写回复
用AI写文章
17 条回复
切换为时间正序
请发表友善的回复…
发表回复
光明山人 2001-10-22
  • 打赏
  • 举报
回复
Delphi的帮助里就有很多的例子啊,贴出来太占版面了吧?
ltz 2001-10-18
  • 打赏
  • 举报
回复
关键是和query1.sql.clear;没有关系,我query1.sql.text:='sdfs';实际上已经把原来的冲掉了,就象我们和变量不是一样吗?
关键问题是我再在DGRID中操作数据时,有时会出现这样的错误:couldn't peroform the edit
because another user change the record;
还有一个字段定义了NUMBER(8,2),但是我如果出入的数据超出这个范围也报错,出现这样的错误


Bob7946 2001-10-18
  • 打赏
  • 举报
回复
我靠,你在那个query里每次动态写语句时,都不带清空以前的垃圾的吗?我真为那个query悲哀!
参考SQL(添加部分):
query1.sql.clear;
query1.sql.add('what what what')
ltz 2001-10-18
  • 打赏
  • 举报
回复
这个问题不会没有人会吧,如果帮我做出来,再给500分
ltz 2001-10-18
  • 打赏
  • 举报
回复
qry_auto.UpdateObject := qry_js
这句话根本无法执行啊
ltz 2001-10-18
  • 打赏
  • 举报
回复
请大家帮帮忙啊
poleax 2001-10-18
  • 打赏
  • 举报
回复
sorry,贴错了!

你那个错误因为你的这条记录已经处于编辑状态,你再用update当然报错了
ltz 2001-10-18
  • 打赏
  • 举报
回复
能不能具体点?或者给个例子,我再给500
poleax 2001-10-18
  • 打赏
  • 举报
回复
用qrShape画
ltz 2001-10-18
  • 打赏
  • 举报
回复
你能不能给我一个例子啊
光明山人 2001-10-18
  • 打赏
  • 举报
回复
改一下qry_js,改成TUpdateSQL组件,再看看书上和帮助中TUpdateSQL的说明吧,带有一个很长的例子咧
ltz 2001-10-18
  • 打赏
  • 举报
回复
好吧
在DBGRIDE的我就执行了这样的语句:
var
v_jsgs:string;
begin


//计算各项
qry_auto.Close;
qry_auto.SQL.Clear;
qry_auto.SQL.text:='select code,name,jsgs from jisuan_gsb where code<>''D'' and code<>''C''';
qry_auto.Open;
while not qry_auto.eof do
begin
v_jsgs:=qry_auto.fieldbyname('jsgs').asstring;
qry_js.Close;
qry_js.SQL.text:='update '+v_table+' set '+v_jsgs;
qry_js.ExecSQL;
qry_auto.Next;
end;
如果将这些程序去掉,就不出错,怎么会事啊?

end;

光明山人 2001-10-17
  • 打赏
  • 举报
回复
设置qry_auto.UpdateObject := qry_js
ltz 2001-10-17
  • 打赏
  • 举报
回复
v_jsgs是个计算公式,其实就是更新一个表
update table1 set a4=a1+a2+a3
hx 2001-10-17
  • 打赏
  • 举报
回复
好象和刷新有關
tikkypeng 2001-10-17
  • 打赏
  • 举报
回复
'update '+v_table+' set '+v_jsgs;

这个语句翻译出来是什么啊??
Update Table1 Set aaa???????

5,388

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 开发及应用
社区管理员
  • VCL组件开发及应用社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧