0

正如标题所说,Adobe AIR 平台中的 SQL 实现是否支持“ON DUPLICATE KEY UPDATE”?我无法让它工作,但我可能使用了错误的语法,特别是如果它与 MySQL 语法不同。flex 中的 SQL 文档非常稀少,我发现的文档很少提到 ON DUPLICATE KEY UPDATE。我得到的错误毫无意义:“错误 #2044: Unhandled SQLErrorEvent:.errorID=3115, operation=execute , message=Error #3115: SQL Error. , details=near 'ON': syntax error”

如果我收到错误,数据库文件根本不会插入任何值。

var insertQuery:String = "INSERT INTO movies(id, title, type, date_added) VALUES('" +
movieData['id'] + "', '" +
movieData['title'] + "', '" +
movieData['type'] + "', '" +
"2012-01-18 06:05:01" +
"') ON DUPLICATE KEY UPDATE title = 'TEST', type = 'movie', date_added = '2011-11-11 08:02:01'";

没有“ON DUPLICATE KEY UPDATE”,它可以按预期工作;

4

1 回答 1

1

AIR 的 SQL 基于SQLite。尽管自动解决冲突解决不适用于外键,但使用before insert trigger.

于 2012-08-06T19:47:26.277 回答