2010-10-13 63 views
1

我一直在使用Adobe Air框架(使用JavaScript)和sqlite 3数据库。一切工作都很有效,但过了一会儿,Db开始抛出数据类型不匹配:无法将文本值转换为数值错误。最好我记得,我没有修改数据库模式或JS代码。 SQL命令如下:Adob​​e Air中的Sqlite数据类型不匹配

UPDATE products_original SET purchase_id='7894', sold_qty=sold_qty+1 WHERE id='11786' 

有趣的是,当使用外部程序连接到sqlite数据库时,相同的命令不会引发错误。 你能帮我解决这个问题吗?

编辑:列都是INTEGER类型。

+0

在sql命令中不使用撇号仍会产生相同的错误。 :( – dande 2010-10-13 19:59:17

回答

1

如果您从外部工具插入整数列中的字符串数据,Adobe air sqlite会对数据类型进行非常严格的处理,它会抛出这类错误。检查表中的数据是否遵循已分配给每列的数据类型

+0

也是如此,另外,请检查你用于SQLite操作的编辑器,例如SQLite Manager,出于某种原因混淆了数据类型,非常讨厌。 – Francisc 2011-08-06 21:43:42