太简单了
with query1 do 
begin
  close;
  sql.clear;
  sql.add('insert table values(:T1,:T2)');
  paramerers.ParamByName('T1').Value='1';
  paramerers.ParamByName('T2').Value='2';
  open;end;

解决方案 »

  1.   

    with Adoquery1 do
    begin
      close;
      SQL.clear;
      SQL.add('insert table values (:T1,:T2)');
      Parammeters.ParamByName('T1').value:='1';
      Parammeters.ParamByName(T2).value:='2';
      open;
    end;
      

  2.   

    adoquery1.commandtext:='adfadsfasdf'
    adoquery1.Parammeters.ParamByName('T1').value:='1'
      

  3.   

    应该这样写:
    with Adoquery1 do
    begin
      close;
      SQL.clear;
      SQL.add('insert table values (:T1,:T2)');
      Parammeters.parameters.item[0].value:='1';
      Parammeters.parameters.item[1].value:='2';
      open;
    end; 
    上面的语句在一般情况下都能执行成功,用parambyname()有时可能出现差错
      

  4.   


              try
                with ADOQuery1 do
                begin
                    close;
                    sql.Clear ;
                    SQL.Add('insert into  zone values(:zid,:name)');
                    Parameters.Parambyname('zid').Value:=z_id;
                    Parameters.Parambyname('name').Value:=z_name;
                    execSQL;
                end ;
              except
                showmessage('error insert0');
              end;可是不行确出现如下的错误。
    /变量或者类型不正确,或者不在可以接受的范围之内要不就是变量与其它数据冲突。我不知道是怎么回事??
    帮帮看看??
      

  5.   

    try
                with ADOQuery1 do
                begin
                    close;
                    sql.Clear ;
                    SQL.Add('insert into  zone values(:zid,:name)');
                    Parameters.Parambyname('zid').asstring:=z_id;
                    Parameters.Parambyname('name').asstring:=z_name;
                    open;
                end ;
              except
                showmessage('error insert0');
              end;
      

  6.   

    paramerers改换成Params,其他的相同了