sql.Add('Insert into emailadd(user, emailaddress) values(:p0, :p1)'); Parameters[0].Value := user.Text;
Parameters[1].Value := emailAdd.Text;为什么老是提示我语法错误。我平时都是这么用的是好的。搞不懂。

解决方案 »

  1.   


      Parameters改成Params,编程要仔细。
      

  2.   

    with ADOQuery1 do
    begin
       close;
       sql.Clear;
       sql.Add('Insert into emailadd(user, emailaddress) values(:p0, :p1)');
       Parameters.ParamByName('p0').Value := user.Text;
       Parameters.ParamByName('p1').Value := emailAdd.Text;
       try
         ExecSQL;
       except
         close;
         MessageDlg('无法打开数据库!', mtError, [mbOK], 0 );
         exit;
       end;
    end;
      

  3.   


       原来用的是ADO,那只能用Parameters访问参数,问题出在.value上,我没用过这样赋值的,好像是.varVariant
      

  4.   

    close;
              sql.Clear;
              sql.Add('Insert into CcName(命名, IP地址, 类型, 端口, 机架编号, 插槽编号, 备注) values(:p0, :p1, :p2, :p3, :p4, :p5, :p6)');
              Parameters[0].Value := InputName;
              Parameters[1].Value := Ip;
              Parameters[2].Value := style;
              Parameters[3].Value := Port;
              Parameters[4].Value := JjId;
              Parameters[5].Value := CcId;
              Parameters[6].Value := Comm;
              try
                 ExecSQL;
              except
                 MessageDlg('无法打开数据库', mtError, [mbOK], 0 );
                 exit;
              end;
      

  5.   

    sql.Add('Insert into emailadd([user], emailaddress) values(:p0, :p1)');
      

  6.   

    genphone_ru(票票)   我 按 照 你 的 方 法 可 以 了 , 这 是 什 么 原 因 呀 ?
        为 什 么 我 以 前 按 我 自 己 的 方 法 都 可 以 的 呀 ?
        还 有 一 个 问 题    sql.Add('Select Id = @@Identity');  在 Access 中 是 不 是 不 支 持 的 呀 ?
      

  7.   

    sql.Clear;
          sql.Add('select Id = @@Identity From emailadd');
          try
            open;
          except
            close;
            FrmEmail.chushihua;
            exit;
          end;语法错误(操作符丢失)在查询表达式‘Id = @@Identity’中.
    数据库是access的。是不是不支持这样的查询?
      

  8.   

    along603(阿三) 什么关键字??