这样:还是不行,执行like语句能返回语句,>、<都无法返回语句
数据库是accessprocedure TForm1.Button1Click(Sender: TObject);
begin
  if (combobox1.Text='单位编号')and(combobox2.Text='like') then
  begin
  adoquery1.Close;
  adoquery1.SQL.Clear;
  adoquery1.SQL.Add('select * from [交款明细] where '+trim(combobox1.text)+' '+'like '+'''%'+trim(edit1.text)+'%''');
  adoquery1.Open;
  if (combobox1.Text='单位名称')and(combobox2.Text='=') then
  begin
  adoquery1.Close;
  adoquery1.SQL.Clear;
  adoquery1.SQL.Add('select * from [交款明细] where '+trim(combobox1.text)+' '+'= '+''''+trim(edit1.text)+'''');
  adoquery1.Open;
  if (combobox2.Text='在职')and(combobox2.Text='>')then
  begin
  adoquery1.Close;
  adoquery1.SQL.Clear;
  adoquery1.SQL.Add('select * from [交款明细] where '+trim(combobox1.text)+' '+'> '+''''+trim(edit1.text)+'''');
  adoquery1.Open;
  
  end;
  end;
  end;

解决方案 »

  1.   

    trim(combobox1.text)是字段名吗?
      

  2.   

    if (combobox1.Text='单位名称')and(combobox2.Text='=') then
      begin
      adoquery1.Close;
      adoquery1.SQL.Clear;
      adoquery1.SQL.Add('select * from [交款明细] where '+trim(combobox1.text)+'='+trim(edit1.text));
      adoquery1.Open;
      if (combobox2.Text='在职')and(combobox2.Text='>')then
      begin
      adoquery1.Close;
      adoquery1.SQL.Clear;
      adoquery1.SQL.Add('select * from [交款明细] where '+trim(combobox1.text)+'>'+trim(edit1.text));
      adoquery1.Open;
      

  3.   

    是字段名。
     Kevin_Lmx(繁华阅尽) 按还是不能成功。
      

  4.   

    你所谓的<或者>比较时是字符串比较,还是数字型比较
    你程序中用的是字符串比较,字符串'19'是大于字符串'151'的