用AdoConnection时出错,不知道什么原因?代码如下(100分)

  • 主题发起人 主题发起人 lightninglu
  • 开始时间 开始时间
L

lightninglu

Unregistered / Unconfirmed
GUEST, unregistred user!
VAR X:string;
try
iF CHECK1.Checked THEN X:='1';
IF NOT CHECK1.Checked THEN X:='0';
if datamodule1.DepCnn.InTransaction then datamodule1.DepCnn.RollbackTrans;
datamodule1.DepCnn.BeginTrans;
begin
datamodule1.QryDepart.SQL.Clear;
datamodule1.QryDepart.sql.Add('select count(*) as dpt_id from department_info where dpt_id='+''''+eid.Text+'''');
datamodule1.QryDepart.open;
if datamodule1.QryDepart.FieldByName('DPT_ID').AsInteger>1 then
Messagebox(0,pchar('123'),'1211',MB_OK+MB_iconwarning)
Else IF datamodule1.QryDepart.FieldByName('DPT_ID').AsInteger<=1 then
datamodule1.QryDepart.Insert;
datamodule1.QryDepart.FieldByName('dpt_id').AsString:=eid.Text;
datamodule1.QryDepart.FieldByName('dpt_name').AsString:=ename.Text;
datamodule1.QryDepart.FieldByName('dpt_id').AsBoolean:=strtobool(x);
datamodule1.QryDepart.Post;
//datamodule1.QryDepart.ExecSQL;
datamodule1.DepCnn.CommitTrans;
datamodule1.QryDepart.Refresh;
close;
end;
except
begin
MessageBox(0,pchar('Insert Failed!!!'),'Bath',mb_ok+mb_iconinformation);
datamodule1.DepCnn.RollbackTrans;
exit;
end;
运行时报错:query: field 'dpt_id' not found,
 
datamodule1.QryDepart.FieldByName('dpt_id').AsString:=eid.Text;
datamodule1.QryDepart.FieldByName('dpt_name').AsString:=ename.Text;
datamodule1.QryDepart.FieldByName('dpt_id').AsBoolean:=strtobool(x);
你是不是写错了
怎么dpt_id在第1、3行都出现了?而且一个是字符型、一个是布尔型?[?]
 
上面是我写错了,不过问题依旧
 
datamodule1.QryDepart的结果集中没有这个字段
 
我敢肯定datamodule1.QryDepart的结果集中有这个字段
 
应该是没有这个字段吧,好好的检查一下。看看中间什么地方写错了。[8D]
 
后退
顶部