我想使用 SQLDelight 连接到 SQLite In-Memory 数据库进行测试并连接到 PostgreSQL 服务器进行生产,这种用例可能吗?我怎么能做配置?我是否需要为每个数据库提供 .sq 文件?
问问题
376 次
1 回答
3
是的,你可以。
首先,在模块的“src/main”目录中为每个数据库创建一个目录:
src/main/database1/
src/main/database2/
每个数据库都需要 .sq 文件吗?
是的,你需要它。将您的 .sq 文件放入与包相关的目录中:
src/main/database1/your/package/name/database1.sq
src/main/database2/your/package/name/database2.sq
接下来,在模块的 build.gradle 文件中配置您的数据库:
sqldelight {
database("Database1") {
packageName = "your.package.name"
sourceFolders = listOf("database1")
}
database("Database2") {
packageName = "your.package.name"
sourceFolders = listOf("database2")
}
}
为每个数据库指定正确的(在上一步中创建的)sourceFolders 很重要。
最后,为每个数据库实现正确的驱动程序,如 SqlDeLight 文档中所述。
在使用数据库之前重建您的项目。SqlDeLight 将为每个数据库生成单独的实现类。
于 2021-05-19T10:21:53.730 回答