- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
在 SqlDelight documentation 中的示例中,SqlDelight 从 HockeyPlayer.sq
文件生成的 HockeyPlayerModel
在抽象类中实现 public 抽象类 HockeyPlayer 实现 HockeyPlayerModel
在此类中,字符串 SELECT_ALL_INFO
作为查询传入 db.rawQuery(SELECT_ALL_INFO, new String[0])
。字符串 SELECT_ALL_INFO
是由 HockeyPlayer.sq
内的 select_all_info
语句生成的。但是,在我的情况下,我的语句不会生成字符串。这是为什么?
我的声明
names_for_groups:
SELECT DISTINCT name, exercise_set_group FROM exercise_set JOIN exercises
USING (exercise_id) WHERE workout_FK = ? ORDER BY exercise_set_group ASC ;
我对 SqlDelight 生成的 ExerciseSetModel
的实现
@AutoValue
public abstract class DbExerciseSet implements ExerciseSetModel, DbItem {
public static final Factory<DbExerciseSet> FACTORY = new Factory<>(AutoValue_DbExerciseSet::new);
public static final RowMapper<DbExerciseSet> MAPPER = FACTORY.select_allMapper();
public static final RowMapper<NamesForGroups> NAMES_FOR_GROUPS_MAPPER =
FACTORY.names_for_groupsMapper(AutoValue_DbExerciseSet_NamesForGroups::new);
public List<NamesForGroups> namesForGroups(SQLiteDatabase db) {
List<NamesForGroups> namesForGroupsList= new ArrayList<>();
Cursor cursor = db.rawQuery(NAMES_FOR_GROUPS, new String[0]);
while (cursor.moveToNext() && NAMES_FOR_GROUPS_MAPPER.map(cursor) != null) {
//NamesForGroups namesForGroups = NAMES_FOR_GROUPS_MAPPER.map(cursor);
namesForGroupsList.add(NAMES_FOR_GROUPS_MAPPER.map(cursor));
}
return namesForGroupsList;
}
@AutoValue
public abstract static class NamesForGroups implements Names_for_groupsModel {}
@AutoValue
public abstract static class Exercises implements ExerciseModel {}
}
需要明确的是,在 db.rawQuery(NAMES_FOR_GROUPS, new String[0]) 行中找不到变量引用 NAMES_FOR_GROUPS
最佳答案
文档需要更新,我会更新。我们不再在 SQLDelight 0.6.+ 中生成字符串,而是工厂中有一个方法返回用于查询的 SQLDelightStatement
:
public List<NamesForGroups> namesForGroups(SQLiteDatabase db) {
List<NamesForGroups> namesForGroupsList= new ArrayList<>();
SQLDelightStatement query = FACTORY.name_for_groups();
Cursor cursor = db.rawQuery(query.statement, query.args);
while (cursor.moveToNext() && NAMES_FOR_GROUPS_MAPPER.map(cursor) != null) {
//NamesForGroups namesForGroups = NAMES_FOR_GROUPS_MAPPER.map(cursor);
namesForGroupsList.add(NAMES_FOR_GROUPS_MAPPER.map(cursor));
}
return namesForGroupsList;
}
关于java - SqlDelight 不为 SQL 语句生成 SQL 查询字符串,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43658678/
我在 Android 上使用 sqldelight 1.4.1。 如果我想在我的应用程序的第二次迭代中添加表格,我应该将 CREATE TABLE Preset(blabla) 代码放在哪里?如果我把
我正在尝试在 SQLDelight 的表中添加更多列。我做了一个迁移文件 1.sqm .在迁移文件中,它给出了找不到表的错误。 我的 build.gradle.kts: sqldelight {
我想用 SQLDelight 建模关系,尤其是 一对多关系。 我有 2 张 table :recipe和 ingredient .为简单起见,它们看起来像这样: CREATE TABLE recipe
我有一个 KMM 项目并想使用 SqlDelight库,但是当我构建未生成的项目数据库模式和表实体时。 actual class DatabaseDriverFactory(private val c
我们正在处理一些我们有 SQLDelight 数据库和 DBRevisionPhrase 表的项目: CREATE TABLE DbRevisionPhrase ( userId TEXT N
SqlDelight 显然有 Kotlin 协程扩展函数,但我不知道如何实现它们,因为我找不到文档。 我有一个看起来像这样的普通查询: val allItems get() = itemQueri
我正在尝试使用 sqldelight 插入一个项目,但在插入后也返回该项目的 ID。在 sqldelight 中似乎没有办法做到这一点。 我可以在插入后调用类似 SELECT last_insert_
我有一个运行良好的 SqlDelight 数据库。我是这样创建的: Database(AndroidSqliteDriver(Database.Schema, context, DatabaseNam
我们想将我们的 App 从 Room 迁移到 SQLDelight,以便在 iOS 上重用它(它是一个多平台项目)。 然而,我注意到 SQLDelight 比 Room 慢得多。对于某些查询,它慢了大
忽略多平台优势,使用空间比 sqldelight 有什么优势吗? 最佳答案 [2021/04/25 编辑] SQLDelight 现在正式支持 AndroidX Paging3 作为其扩展,因此您可能
我在 Android 应用程序中将数据保存到 sqldelight 1.4 时遇到问题。 我创建了表: CREATE TABLE myTable( id INTEGER NOT NULL PR
在 SqlDelight documentation 中的示例中,SqlDelight 从 HockeyPlayer.sq 文件生成的 HockeyPlayerModel 在抽象类中实现 public
是否可以在纯 Java/Kotlin 模块上使用 SQLDelight JVM 驱动程序,该模块稍后将在 Android 模块上使用? 只是想知道,因为我喜欢将应用程序的持久层放在其 Domain 模
SQLDelight 仍被标记为 Maven 存储库中的实验库 here ,尽管第一个版本似乎是在 2018 年 10 月发布的。 我在 KMM 中制作了一个示例应用程序,我可以在其中插入/删除行,到
SQLDelight 仍被标记为 Maven 存储库中的实验库 here ,尽管第一个版本似乎是在 2018 年 10 月发布的。 我在 KMM 中制作了一个示例应用程序,我可以在其中插入/删除行,到
我正在从事 kotlin 多平台项目。我成功地将几个库添加到了我的 build.gradle(ktor、协程......)。我还将 sqldelight 添加到 common、android 和 io
是否可以配置 sqldelight 为所有的 getter 和 setter 添加前缀? CREATE TABLE foo { bar TEXT } 条形图() -> 获取条形图() 最佳答案 目
我正在尝试在我的应用程序中使用 SqlDelight 数据库。 在我的 DAO 中,我有一个名为 getRecipeById 的函数来查询数据库并返回域模型流(Recipe)。下面是该函数的实现:(注
我尝试将 sqldelight 添加到我的 Kotlin 多平台应用程序中,但 AndroidSqliteDriver 未解析引用。我不明白为什么。 我清除缓存并重新生成所有内容,但它也不起作用。 A
我尝试将 sqldelight 集成到我的 Android/iOS 多平台库项目中,但在同步 gradle 时我遇到了几个 Unresolved 依赖项错误。 ERROR: Unable to res
我是一名优秀的程序员,十分优秀!