16得票5回答
Sqldelight数据库模式未生成。

我有一个KMM项目,想要使用SqlDelight库,但是当我构建项目时,数据库模式未生成,表实体也未生成。 actual class DatabaseDriverFactory(private val context: Context) { actual fun createDriv...

14得票1回答
检测到重复的内容根路径

在我复制项目后,Android Studio 给了我以下错误代码:Duplicate content roots detected: Path [/home/addi/AndroidStudioProjects/appfolder/appname/app/build/generated/sql...

12得票2回答
使用SqlBrite/SqlDelight(离线数据库)和Retrofit(Http请求)的仓库模式

我正在使用SqlBrite/SqlDelight实现RxJava中的存储库模式,用于离线数据存储,同时使用retrofit进行Http请求。 这是一个示例:protected Observable<List<Item>> getItemsFromDb() { ...

11得票1回答
在sqldelight中获取插入行的行ID

我正在尝试使用sqldelight插入一个项目,但也希望在插入后返回该项目的id。在sqldelight中似乎没有这样的方法。 我可以在插入后调用SELECT last_insert_rowid();之类的东西,但这是前进的最佳方式吗?

8得票1回答
SQLDelight与Room相比性能较慢

我们想将我们的App从Room迁移到SQLDelight以便在iOS上复用它(这是一个多平台项目)。 然而我发现SQLDelight比Room慢得多。对于某些查询,它大约慢了10倍左右。 我进行了深入测试,使用插入语句,在Room中平均需要5毫秒,在SQLDelight中平均需要25毫秒。我检...

8得票1回答
Sqldelight 1.4如何在没有主键(id)的情况下插入填充数据生成的对象?

我在Android应用程序中将数据保存到Sqldelight 1.4时遇到了问题。 我创建了表格: CREATE TABLE myTable( id INTEGER NOT NULL PRIMARY KEY AUTOINCREMENT, name TEXT ); 在re...

8得票2回答
如何查看/更新数据库版本?是否有类似于“fallbackToDestructiveMigration”的东西?

将 sq 文件修改后,重命名其中一个表并添加一张新的表后,我找不到指定数据库模式或版本已更改且我不需要迁移 - 只需重新创建数据库的地方。在官方网站的文档中没有任何相关信息。 项目编译通过,但在 Android 和 iOS 上运行应用程序时,出现运行时崩溃并且日志显示添加的表不存在。 我尝...

7得票1回答
如何在后台线程中执行查询?

我目前正在研究使用SQLdelight作为支持所有领域相关操作的KMM应用程序后端。 SQLdelight提供了非常好的接口,但似乎所有写入调用(插入/更新/删除)都是使用阻塞调用实现的,因此我担心它会通过阻塞主线程来损害应用程序的响应性能。 有没有建议的方法可以在不阻塞主线程的情况下执行...

7得票1回答
SQLDelight关系

我希望使用SQLDelight建立关系模型,特别是一对多的关系。 我有两个表:recipe(食谱)和ingredient(配料)。为了简单起见,它们看起来像这样: CREATE TABLE recipe ( id INTEGER NOT NULL PRIMARY KEY, name...

7得票1回答
Android Room 和 SqlDelight 之间的根本区别是什么?

除了多平台优势外,使用Room与SqlDelight相比,有什么优点吗?