我用的是Delphi7,用dbx做程序,使用了一个TSqlQuery做insert操作,使用了传Param(例如:insert into a (code,name) values (:code,:name),然后用paramByName('code').AsString:='a'这样传),可是每次ExecSql的时候,系统都报Invalid Filed Type,我把字段都检查了一遍,类型、拼写都正确,望各位指教!

解决方案 »

  1.   

    code,name->[code],[name]或改成其它字段如sCode,sName看是不是它与数据库关键字有冲突
      

  2.   

    各位辛苦了,问题解决了,是kaershaw的回复启发了我,开始我把所有的AsString,AsFloat,AsInteger,AsDateTime都改成了value,还是不行,我就开始逐步的减少字段,当我把字段减少到只剩下字符或字符串类型的时候,系统通过,我受到启发,试验加入非字符、字符串类型,发现除了这样的类型以外,系统都会报错,我随即将所有赋值都转换为字符串,然后进行赋值,系统通过。到数据库中查询,保存结果正确,问题解决。
    不知我这样解决是否正确,至少到目前为止只有这一种方法,欢迎各位大虾再多指教。