你的库中的字段类型是什么?你用的数据库是什么?用如sql server like就加上%如查张三,张四,可以用like '张%' 还有你的name是什么是变量吧还有如果你的name为字符串变量如name为张你想查t_name中包括张的 sql_str:='... where t_name like'+#39+name+'%'+#39其余的你可以仿照写

解决方案 »

  1.   

    like ''%'+name+''%' 
    其他类似,
    试一下吧。
      

  2.   

    应该是 like ''%' + name + '%''吧
      

  3.   

    ‘..from infoxs where t_name like '''+name+''' 这样行吗???
    在delphi里面好像引号不能直接这样写吧??
    我都是这样写的'..  like '+''''+变量+''''...
      

  4.   

    t_name like ''%'+name+'%'' 
    应为
    t_name like :name
    name为 '%'+name+'%'
      

  5.   

    好象没有什么错呀。用Like没有错!!
      

  6.   

    语法错误?还是查不到记录?
    如果是查不到记录的话,那就是LIKE的问题。
      

  7.   

    这个是问题么?
    你还可以用个label.其中使它的值为 ' 就可以了,最后可以在字符串中直接调用(亦可以用一个字符串变量调用),把label的属性设为不可见。
      

  8.   

    你这样试试:
    with ... do
    begin
      Close;
      SQL.Clear;
      SQL.Add(SQL_Str);
      SQL.SaveFile('SQLText.txt');
      Open;
    end;然后你打开SQLText.Txt文件在查询分析器里试一试,对不对,错不错你会知道,那儿有错,那儿没有错你也会知道;
    -----------------------------------
    www.nxit.net/bbs 欢迎您
      

  9.   

    在sqlplus中测试一下不就好了吗??
      

  10.   

    应该是 like ''%' + name + '%''吧,最好你的语句分开写
      

  11.   

    应该是 like ''%' + name + '%''吧,最好你的语句分开写
    哇噻!!! 一个这答案要回答十八次呀,佩服。
      

  12.   

    对于使用''''+name+''''的情况,可以使用函数:
     ...+QuotedStr(name)+...
    即可。免得你写的引号不对。
      

  13.   

    问题不是出在where 后面。我只要在select后面任意少选几个字段语句就能正确执行了
      

  14.   

    好象有点眉头了
    是不是应为string类型的长度不够啊
      

  15.   

    对不起,想错了,是四个引号.sorry
      

  16.   

    或许是过长的问题,分成几段试一下行不行
    SQL.Add(...);
    SQL.Add(...);
    SQL.Add(...);
    .
    .
    .
      

  17.   

    不可能是因为string类型,除非你用了{$H-},使得string 默认成了shortstring,始终觉得是sql语句错误,如果你肯定任意在select语句中减少一个字段就没错的话,你可以试试在减少的基础上再增加一个你已经使用的字段如:
    select field1,field2,field3 from ....没错的话
    那变成
    select field1,field1,field2,field3 from ...//注意用两个field1,这时如果存在错误你才考虑string类型的长度不够的问题吧!
      

  18.   

    对于写Delphi写的SQL语句,刚开始我也经常出错,慢慢地在工作中得出经验:
    1.善用SQL Explorer:我们可以先将写好的语句在SQL Explorer的Enter Sql里面执行一便,如果能得到正确的查询结果则注意以下变量类型和Delphi中第一个单引号表示转义字符则很容易写正确
    2.即使出错了,也可以利用Delphi的Tools Tips技术,在调试的时候将鼠标放到存储Sql语句的变量旁边就能看到此时经过编译器处理过的字符串的值,此时再对照在Sql Explorer里面的正确语句稍微修改就行了
      

  19.   

    有两个原因:
    1。select语句太长,分几句写
    2.数据表中的字段是否有你要授索的字段