关于参数查询

zhanggok 2003-10-19 08:22:57
Moidif.SQL.Clear;
query1.SQL.Add('update card set openmoney=(:money)');
query1.Params[0].AsFloat:=55;
edit1.Text:=shopdata.Moidif.SQL.Text;
为什么我已经为参数money传值了但为什么在
edit1.text中显是还是update card set openmoney=(:money)
...全文
45 6 打赏 收藏 转发到动态 举报
写回复
用AI写文章
6 条回复
切换为时间正序
请发表友善的回复…
发表回复
zhanggok 2003-10-19
  • 打赏
  • 举报
回复
程序已经执行了
hmily1688 2003-10-19
  • 打赏
  • 举报
回复
事实就是如此啊,因为参数在执行前并没有被替换呢,接受这个事实吧,计算机是不会骗你的
zhanggok 2003-10-19
  • 打赏
  • 举报
回复
shopdata.Moidif.SQL.Clear;
shopdata.Moidif.SQL.Add('select * from card where cardid=(:cid)');
shopdata.Moidif.Params[0].AsString:='000005';
shopdata.Moidif.ExecSQL;
shopdata.Moidif.Active:=true;
edit1.Text:=shopdata.Moidif.SQL.Text;
结果还是select * from card where cardid=(:cid)
47522341 2003-10-19
  • 打赏
  • 举报
回复
query1.SQL.Clear;
query1.SQL.Add('update card set openmoney=(:money)');
query1.Params[0].AsFloat:=55;
query1.execsql;

edit1.Text:=shopdata.Moidif.SQL.Text;

这样就行了;
47522341 2003-10-19
  • 打赏
  • 举报
回复
楼主用的是插入语句;应该在程序后边加一句;
query1.execsql;
delphi1234567 2003-10-19
  • 打赏
  • 举报
回复
事实就是这样的嘛。

需要OPEN(),或才Active=TRUE时,参数才会被替换成真正原值参与计算。

2,496

社区成员

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

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