高分求救!!!为什么检索不到数据?(100分)

  • 主题发起人 主题发起人 mikor2001
  • 开始时间 开始时间
M

mikor2001

Unregistered / Unconfirmed
GUEST, unregistred user!
我用Tdataset连SQL SERVER7。0数据库。
我用下列语句为什么检索不到数据:
dataset1.commandtext:='select NO, PW from table1
where no =:account'
我把参数account的类型设为ftfloat或ftstring都不行
其中段no在SQL SERVER中的数据结构是这样定义的:类型是float,大小是8。
大虾们赶快帮帮小弟吧!!!
 
在query analyzer中试试
代入account具体数值
 
to sportsman:
在delphi中我代过具体的值可行。
 
干脆改用全套SQL语句
' select NO, PW from table1 where no ='''+account+''''
 
不是no:=account
是no=account
 
pipi_lu乱讲!
 
htw说得不错,pipi_lu可能是没有注意这是个参数,htw的方法跟设参数差不多,我看
主要还是参数的原因,你用了ParamByName('account').AsFloat没有?
另外,你的表名叫作table1?是不是写错了?
 
出什么错?
参数定义了吗?
 
大家说的我全做了,可就是出不来。我快要疯了

account:=3500011181;
datamodule1.adoquest1.Parameters.ParamByName('account').value:=account;
 
妳不用QUERY的么,ADOQUERY1.CLOSE ;
ADOQUERY1.SQL.CLARE ;
ADOQUERY1.SQL.ADD('select NO, PW from table1 where no ='+account) ;
ADOQEURY1.SQL.OPEN ;
 
按照你说的,我建了一个表,并输入纪录,用你写的代码测试,没问题。
是不是你的delphi没有升级。
 
我建议改一下参数的名称试一下.(最好不要用关键字)
 
会不会是因为实数类型比较的问题,比如1它用实数来表示有可能是0.9999999999,所以两者
可能会不等。
 
各位我的问题已经解决了,但还是谢谢各位的帮助,大家分分吧
 
可是我还是希望到底是什么原因?
 
后退
顶部