insert into ptype(typeid,Fullname,barcode,Standard,area)values(00002,'第二个商品',654321,'1*80','福州')
可以插入数据a,c,b,d,e: string;
begin
   a := Edit1.Text;
   b := Edit3.Text;
   c := Edit5.Text;
   d := Edit7.Text;
   e := edit2.Text;
   with DM do
   begin
    ADOQuery1.Close;
    ADOQuery1.SQL.Clear;
    ADOQuery1.SQL.Add('insert into ptype(typeid,Fullname,barcode,Standard,area)values(a,b,c,d,e)');
    ADOQuery1.Open;
   end;这样就不行了,大概是数据类型不对,但不知道怎么做?

解决方案 »

  1.   

    变量之间要用+号的ADOQuery1.SQL.Add('insert into ptype(typeid,Fullname,barcode,Standard,area)values(' + a + ',''' + b + ''',' + c + ',''' + d + ''',''' + e + ''')'); 
      

  2.   

    那你就转呗!
     
    ADOQuery1.SQL.Add('insert into ptype(typeid,Fullname,barcode,Standard,area)values(StrToInt(a),b,StrToInt(c),d,e)'); 
      

  3.   

    a,c,b,d,e: string; 
    begin 
      a := Edit1.Text; 
      b := Edit3.Text; 
      c := Edit5.Text; 
      d := Edit7.Text; 
      e := edit2.Text; 
      with DM do 
      begin 
        ADOQuery1.Close; 
        ADOQuery1.SQL.Clear; 
        ADOQuery1.SQL.Add('insert into ptype(typeid,Fullname,barcode,Standard,area) values(:a,:b,:c,:d,:e)');
        ADOQuery1.Parameters.Item[0].value:=a; 
        ADOQuery1.Parameters.Item[1].value:=b; 
        ADOQuery1.Parameters.Item[2].value:=c; 
        ADOQuery1.Parameters.Item[3].value:=d; 
        ADOQuery1.Parameters.Item[4].value:=e; 
        ADOQuery1.ExecSQL; 
      end; 
      

  4.   

        ADOQuery1.Open; 这句也得改成     ADOQuery1.ExecSql;
      

  5.   

    ADOQuery1.SQL.Add('insert into ptype(typeid,Fullname,barcode,Standard,area)values(' + a + ',''' + b + ''',' + c + ',''' + d + ''',''' + e + ''')'); 
    这里面那么多‘’代表什么意思呀