试试以下代码:
filter='xm like '''张%''''

解决方案 »

  1.   

    filter='xm like ''张%'''
      

  2.   

    直接用SQL也可
    with adoquery1 do
      begin
        close;
        sql.clear;
        sql.text:='SELECT * FROM table WHERE xm LIKE '''张%''' ';
        open;
      end;
      

  3.   

    to KongKong(空空如野) :
    我试一下你的方法,你的方法是否可把名为'军'的都找出来?TO larruping(总要把热情渗入,不能达到忘情忘我的境地)
    能否看清我的题目,是用ADOTABLE,而不是用ADOQUERY.
      

  4.   

    要实现把名为‘军’的找出来,可以在数据集OnFilterRecord事件中写代码:
      Accept:=Copy(DataSet['bh'],3,2)='军';
    然后,将Filter置为空,运行时设置Filtered为True.
      

  5.   

    ADOTable1.TableName:='Students';
    ADOTable1.Filtered:=false;
    ADOTable1.Filter:='姓名 Like '+QuotedStr('张%');//QuotedStr('%军%')
    ADOTable1.Filtered:=true;
      

  6.   

    sql.text:='SELECT * FROM table WHERE xm LIKE '''张%''' ';
    或者 用
    setkey
    gotonearest  函数
    我同意用sql 属性  
      

  7.   

    sql.text:='SELECT * FROM table WHERE xm LIKE '''张%''' ';
    绝对可以,我用过了,谢谢回复人: ciniddvon(ciniddvon)
      

  8.   

    to:ciniddvon(ciniddvon) ,yxknet(哓哓) 
      ADOTABLE有SQL的属性吗,用ADOQUERY可以我当然知道,可我的问题是在ADOTABLE下.
      

  9.   

    m没有看清楚 是不能用 SQL 那只能用 FITER
      

  10.   

    用过滤吧:Table.OnFilterRecord事件中写代码。