是不是DELPHI5.0有BUG? ????

hzfb 2003-10-20 10:05:46
请教各位大侠:
//DELPHI5.0+SQL SERVER2000
query.SQL.Clear;
query.SQL.add('update yf_kczz set qcsl=qcsl-:qcsl,rksl=rksl-:rksl,cksl=cksl-:cksl,qmsl=qmsl-:qmsl,xh=xh+1 where kjn=:kjn and kjy=:kjy and ypbm=:ypbm');
query.Params[0].DataType:=ftfloat;
query.Params[0].asfloat:=-500;
query.Params[1].DataType:=ftfloat;
query.Params[1].asfloat:=-500;
query.Params[2].DataType:=ftfloat;
query.Params[2].asfloat:=-500;
query.Params[3].DataType:=ftfloat;
query.Params[3].asfloat:=-500;
query.Params[4].DataType:=ftstring;
query.Params[4].asstring:='2003';
query.Params[5].DataType:=ftstring;
query.Params[5].asstring:='09';
query.Params[6].DataType:=ftstring;
query.Params[6].asstring:='001603';
query.ExecSQL;
以上语句为什么执行后数据库不更新?但若把变量前“-”改为“+”,-500改为500则结果正确。同时若变量前符号有“+”有“-”而变量有正有负则数库所有记录都更新。请问是不是DELPHI5.0有BUG?
...全文
71 5 打赏 收藏 转发到动态 举报
写回复
用AI写文章
5 条回复
切换为时间正序
请发表友善的回复…
发表回复
angle097113 2003-10-20
  • 打赏
  • 举报
回复
update yf_kczz set qcsl=qcsl-(:qcsl)
其实楼上的是正确的 就是还可以
或者在你的减号的后面留空格就可以了
guxizhw 2003-10-20
  • 打赏
  • 举报
回复
给分,结贴!
皮皮虾50
现在都没有人喜欢结贴了,郁闷
Alanwn 2003-10-20
  • 打赏
  • 举报
回复
同意
grail_ 2003-10-20
  • 打赏
  • 举报
回复
同意 sundayzhao(皮皮虾) (
sundayzhao 2003-10-20
  • 打赏
  • 举报
回复
不是delphi的bug,是sql server的bug(也不能说是bug),
在sql server中--表示注释。你的程序写了两个减号,当然无效了,可以这样解决。

'update yf_kczz set qcsl=qcsl-(:qcsl)

2,497

社区成员

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

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