补充说明:
QueryLeft是SQLSERVER用ODBC连接,QueryRight是本地的一个MDB库,用BDE自己的MSACCESS驱动程序在运行到前面代码中最后的EXECSQL之后就出来一个Exception,内容如下:
General SQL Error:
The Insert Into statement contains the following unknown field name :'AccParam0'.
Make sure you've typed the name correctly.我已经专门加了一个SHOWMESSAGE看过SQL命令了(TQuery.TEXT),根本没有什么ACCPARAM0,参数个数也都正常。

解决方案 »

  1.   

    INSERT INTO 的值之间,使用':'?
    应该是','吧?
      

  2.   

    断点我也做过了,反正一句话,出来的SQL命令怎么看都没有问题,下面是一个例子:
    INSERT INTO user_right VALUES (:ur_name, :ur_password, :ur_rights)
    而TQUERY的text属性就显示
    INSERT INTO user_right VALUE (?, ?, ?)
    都很正常啊。
      

  3.   

    QueryRight.Params[k]在插入前赋值了吗?
      

  4.   

    你是不是给QueryRight控件加了固定字段?
      

  5.   

    我已经知道问题了,原来是MSACCESS驱动对SQL命令的处理有问题,不能省略SQL语句中的字段名称。