我在程序中实现了过滤,查询等功能,但是delphi不区分大小写,想求高手指点指点迷津!!
  以下是我的代码,成功运行之后,除了大小写没区分开,我想要的功能都成功了!!procedure TForm1.RzBitBtn1Click(Sender: TObject);
begin
    with ADOQuery1 do
    begin
    Filtered:=  False;
    ADOQuery1.Filter:='CustName like %'+RzEdit1.Text+'%';
    Filtered :=True;
    end;
end;procedure TForm1.RzBitBtn2Click(Sender: TObject);
begin
with ADOQuery1 do
begin
ADOQuery1.Locate('CustName',RzEdit1.Text,[loPartialKey]);
end;end;

解决方案 »

  1.   

    是啊 Delphi是不区分大小写的
    你可能得再做一次判断了
      

  2.   

    实际上我就是要解决这样一个问题,例如我查询的表中有YSJ 和ysj ,然后我输入Y只显示YSJ不会查询到ysj!!
      

  3.   


    还是没有看明白
    delphi不分大小写是关键字,还有自己定义的变量名吧如果你这样
    var
      str1:stirng;
      str2:string;
    begin
      str1:='abc';
      str2:='ABC';  if str1=str2 then
        showmessage('相同')
      else
        showmessage('不相同')
    end;//这样运行的结果是 显示不相同的哦
    如果我说错了请不要见怪
      

  4.   

    楼主啊  你查询的时候 将YSJ 和ysj都转化为大写或写的 不就出来了吗? 将三者全部转化小写 或 大写 明白吗? 显示的时候照常显示原来的值  
      

  5.   

    虽然DELPHI是不区分大小写的,但是,从楼主给出的代码来看。
    应该不是DELPHI的问题,而是数据库的问题。。比如SQL Server就是不区分大小写的。。
    比如:select * from tbl1 where field1 like '%ABC%' 与 
    select * from tbl1 where field1 like '%abc%'
    查询到的结果是一样的。。
      

  6.   

      我用的的ACCESS,那如果是数据库的问题的话,要怎么样修改呢??
      

  7.   

    刚才测试了一下,ACCESS和SQL Server 一样,不区分大小写的。如果是ACCESS,你的通配符是不是有问题啊?
    ACCESS下通配符是:*, SQL Server 下是:%数据库如果不区分大小写,只能在程序里处理了,或者直接将所有编号转成大小。然后告诉用户,编号只能大写,并且不能重复