SQL里处理字符串时有引号,用
Query1.SQL.Text := 'select * from Table1 where id = ''' + input[0] +''''可以将引号传入sql
而参数是不带引号的,所以不行,如果你在参数的两边加上引号,就可以用了,
不过这是对字符串类型的。

解决方案 »

  1.   

    To netlib(河外孤星) 可能不是这个原因,其实一个字符串如果没有引号,数据库会把他当做字段而提示出错信息‘无效列名’,而不是返回空记录集。
      

  2.   

    很急,连续发了3个100分的帖子没有人回答,帮个忙吧。
    http://www.csdn.net/expert/topic/799/799889.xml?temp=.2711603
    http://www.csdn.net/expert/topic/799/799789.xml?temp=.6369135
    http://www.csdn.net/expert/topic/795/795315.xml?temp=.9500238谁能解决,全部可用分相送!
      

  3.   

    你的id应该是定义为integer,而不是varchar。可能是这个原因。
      

  4.   

    To Tiga(风中人..) 其实我们可以认为id可以为任何类型,只是定义为Integer时ParamByName有效,而定义为别的类型时,通过Input传入的参数值正确,但似乎ParamByname无效。