比如我要查询数量大于700的产品,大我的符号是用combobox下拉显示的,怎么班

解决方案 »

  1.   

    with Query1 do
    begin
      Close;
      Sql.Clear;
      Sql.Add('select * from tablename where number>:number');
      ParamByName('number').AsInteger := 700;
      Open;
      ComboBox.Items.BeginUpdate;
      while not eof do
      begin
        ComboBox.Items.Add(FieldByName('name').AsString;
        Next;
      end;
      ComboBox.Items.EndUpdate;
    end;
      

  2.   

    好象还是不能实现呀,那个number是什么呢?
      

  3.   

    var
      a,s,d:string ;
      i:integer;
    begin
        a:='xh';   //字段名变量
       s:='<';      //符号变量
       i:=700 ;      //参数值
       d:=inttostr(i);
       query1.close ;
        query1.sql.clear ;
        query1.SQL.Add ('select * from jbqk where ' + a + s +d);    query1.open  ;
      

  4.   

    谢谢各位大虾
    但是我的程序还是有问题
    Query1.Close;
    Query1.Sql.Clear;
    Query1.Sql.Add('SELECT * from 入库单表');
    Query1.Sql.Add('where 产品名称<>''''');
    if ylksubfind.Edit1.Text<>'' then
    Query1.Sql.Add('And 产品名称='''+ylksubfind.Edit1.Text+'''');
    if ylksubfind.Edit4.Text<>'' and ylksubfind.ComboBox1.text<>'' then
    Query1.Sql.Add('And 数量'+ylksubfind.Edit4.Text+''''+ylksubfind.ComboBox1.Text+'''';
    if ylksubfind.Edit3.Text<>''then
    Query1.Sql.Add('And 单据号='''+ylksubfind.Edit3.Text+'''');
    Query1.Open;   
      

  5.   

    //忘了加空格
    Query1.Close;
    Query1.Sql.Clear;
    Query1.Sql.Add('SELECT * from 入库单表');
    Query1.Sql.Add(' where 产品名称<>''''');
    if ylksubfind.Edit1.Text<>'' then
      Query1.Sql.Add(' And 产品名称='''+ylksubfind.Edit1.Text+'''');
    if ylksubfind.Edit4.Text<>'' and ylksubfind.ComboBox1.text<>'' then
      Query1.Sql.Add(' And 数量'+ylksubfind.Edit4.Text+''''+ylksubfind.ComboBox1.Text+'''';
    if ylksubfind.Edit3.Text<>''then
    Query1.Sql.Add(' And 单据号='''+ylksubfind.Edit3.Text+'''');
    Query1.Open;