Missing operator or semicolon

zhao8848jun 2008-10-30 06:05:14
procedure TForm1.Button1Click(Sender: TObject);
begin
Aqu.Close;
Aqu.SQL.Add('select id,v_Name from tb_Test where i_State=0 order by id');
Aqu.Open;
while not Aqu.Eof do
begin
Memo1.Lines.Insert(0,InttoStr(Aqu.Fields(0))+'----'+Aqu.Fields(1));
Comm.Parameters.Clear;
Comm.CommandText:='Insert into tb_Test(v_Name) values (:@v_Name);';
Comm.Parameters.Refresh;
Comm.Parameters[0].value:= datetimetostr(now);
Comm.Prepared:=true;
try
Comm.Execute;
except
memo1.Text:=Comm.CommandText;
end;
Comm.Connection.Close;
Aqu.Next;
end;
end;
...全文
1016 7 打赏 收藏 转发到动态 举报
写回复
用AI写文章
7 条回复
切换为时间正序
请发表友善的回复…
发表回复
InceptKnowledge 2008-10-31
  • 打赏
  • 举报
回复
Comm.CommandText:='Insert into tb_Test(v_Name) values (:@v_Name);';
zhao8848jun 2008-10-31
  • 打赏
  • 举报
回复
[Quote=引用 3 楼 lake_cx 的回复:]
Memo1.Lines.Insert(0,InttoStr(Aqu.Fields(0))+'----'+Aqu.Fields(1));
这句后面的Aqu.Fields(1)应该改成Aqu.Fields[1].AsString吧?
[/Quote]
不错,是这的问题,但现在出现新的问题了,运行到Aqu.Next这里就出错了
zhao8848jun 2008-10-31
  • 打赏
  • 举报
回复
[Quote=引用 1 楼 genispan 的回复:]
Insert into tb_Test(v_Name) values (:@v_Name)
好好检查下 你这个表中就一个字段吗? 这怎么可以呢?
[/Quote]

哈哈,这有什么不可以的,我只是测试一下,表中有三个字段ID(自增型),i_State(默认值为0),这不就剩下这一个V_Name字段了吗
eqapple 2008-10-31
  • 打赏
  • 举报
回复
Comm.Connection.Close;
------------------------
你把与数据库的链接都断开了,他肯定运行到Aqu.Next这里就出错了

把这句话去掉,或者放在while do begin..end之后
lake_cx 2008-10-30
  • 打赏
  • 举报
回复
Memo1.Lines.Insert(0,InttoStr(Aqu.Fields(0))+'----'+Aqu.Fields(1));
这句后面的Aqu.Fields(1)应该改成Aqu.Fields[1].AsString吧?
genispan 2008-10-30
  • 打赏
  • 举报
回复
如果你要更新某个字段的数据就要用update
genispan 2008-10-30
  • 打赏
  • 举报
回复
Insert into tb_Test(v_Name) values (:@v_Name)
好好检查下 你这个表中就一个字段吗? 这怎么可以呢?

2,497

社区成员

发帖
与我相关
我的任务
社区描述
Delphi 数据库相关
社区管理员
  • 数据库相关社区
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

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