ADOQuery1.Close;
  sql:='select * from 发票表 where 税号='+Edit1.Text+' or 身份证号='+Edit2.Text;
  ADOQuery1.SQL.Add(sql);
  ADOQuery1.Open;
为什么提示我:标准表达式中数据类型不匹配.

解决方案 »

  1.   

    如果是數值型的, 可直接象你
    税号='+Edit1.Text+'
    , 如果是字符型的, 要修改為
    身份证号='''+Edit2.Text + '''';
    原來語句修改如下:
     
      ADOQuery1.Close;
      sql:='select * from 发票表 where 税号='+Edit1.Text+' or 身份证号='''+Edit2.Text + '''';
      ADOQuery1.SQL.Clear; 
      ADOQuery1.SQL.Add(sql);
      ADOQuery1.Open;
      

  2.   

    sql:='select * from 发票表 where 税号='''+Edit1.Text+''' or 身份证号='''+Edit2.Text+'''';
      

  3.   

    ADOQuery1.Close;
      sql:='select * from 发票表 where 税号='''+Trim(Edit1.Text)+''' or 身份证号  Trim(Edit2.Text)+'''';
      ADOQuery1.SQL.Clear; 
      ADOQuery1.SQL.Add(sql);
      ADOQuery1.Open;看看
    税号=  身份证号=  的类型是不是字符串型的,如果不是应该
    ADOQuery1.Close;
    sql:='select * from 发票表 where 税号='''+StrToint(Edit1.Text)+''' or 身份证号 ='''+Strtoint(Edit2.Text)+'''';
      ADOQuery1.SQL.Clear; 
      ADOQuery1.SQL.Add(sql);
      ADOQuery1.Open;