"RETURNING" 附近的 SQLite 语法错误(节点)

SQLite Syntax Error near "RETURNING" (Node)

我有一个带有 Express 服务器的 Node 脚本,我正在尝试向 Table 中插入一个新条目。 如果有以下设置:

db.run('CREATE TABLE lists(id INTEGER PRIMARY KEY AUTOINCREMENT, name TEXT NOT NULL)');
...
db.get(`INSERT INTO lists (name) VALUES (?) RETURNING *;`, [name], (err, row) => {
        ...
    });

Insert 语句抛出:

Error: SQLITE_ERROR: near "RETURNING": syntax error
--> in Database#get('INSERT INTO lists (name) VALUES (?) RETURNING *;', [ 'Testing' ], [Function (anonymous)])

但这应该根据 sqlite wiki

有什么建议吗?

  • 在 Sqlite 3.35 中添加了对 RETURNING 子句的支持。

  • 虽然您在操作系统环境中安装了 Sqlite 3.36,但您的 Node 环境似乎有一个旧版本的 sqlite3 npm 包,其中包含 Sqlite 3.34。

  • GitHub,截至 2021 年 11 月上旬,npm 的 sqlite3 软件包版本 5.0.2 于 2021 年 2 月与旧版本的 Sqlite 一起发布。