偶用的是MS SQL 数据库,
select * from employee where name like :name
name 的参数类型ftfixedchar
name 从INPUTBOX接收,并且,组合成为: %name%
输入人名中任何一个汉字,按照SQL 语法,应该搜索出所有名字带这个输入汉字的名字来,
当employee里面的人名为2个汉字时候,可以搜索出来;
当employee里面的人名为3个汉字时候,就无法搜索任何东西,如何是好?大虾赐教啊。

解决方案 »

  1.   

    我的组合是这样的 name = '%' + trim(inpubox('','','')) + '%';
    我增加了一行showmessage(name) 可以显示出来%周%,employee表中有周某某的,但是,无法搜索出来,如果是两个汉字的名字的empolyee,随便一个名字比如 %吕%,都可以搜出吕某人来。大虾,救命的说。
      

  2.   

    ftfixedchar
    变为 varchar (类似)的类型
      

  3.   

    我用了ftvarbyte 不行啊。
    楼上大虾请继续帮助偶啊。
      

  4.   

    我觉得你的错误在截获输入input上。
    我没有用过input.其他没有什么问题阿
      

  5.   

    楼上大虾:
    我看了INPUTBOX的返回值,没有问题,比如,我在INPUTBOX里面输入“周”,返回真的是“周”,然后, name = '%'+ INPUTBOX 的返回值 + '%'
    ShowMessage(name),显示出来的是 '%周%',所有名字为2个汉字的,都能查出来,3个的就不行了,5555