如何在使用delete/update/insert时返回结果?我在问题上看到建议使用返回,但它不起作用。
2.0.0版本
CREATE TABLE folder (
id INTEGER PRIMARY KEY,
name TEXT NOT NULL
);
insertFolder:
INSERT INTO folder
VALUES (?,?)
RETURNING *;
Compiling with dialect app.cash.sqldelight.dialects.sqlite_3_18.SqliteDialect
xxx.sq: (21, 0): ',' expected, got 'RETURNING'
19 INSERT INTO folder
20 VALUES (?,?)
21 RETURNING *
^^^^^^^^^
Execution failed for task ':app:generateDebugDatabaseInterface'.
> A failure occurred while executing app.cash.sqldelight.gradle.SqlDelightTask$GenerateInterfaces
> Generation failed; see the generator error output for details.
1条答案
按热度按时间ecbunoof1#
如何在使用delete/update/insert时返回结果?
对于框架提供的SQLite,这通常不会是一个选项,多年来。
我在问题上看到建议使用返回,但它不起作用。
RETURNING
是新的。作为the SQLite documentation notes,该关键字是“版本3.35.0(2021-03-12)"的新关键字。根据this SO answer的说法,第一个发布足够新的SQLite的Android版本是Android 14,该版本将于2023年发布。所以,除非你的
minSdkVersion
是34或更高,否则你需要package a copy of SQLite with your app并使用它。这将增加您的应用程序大小。