请求和创建数据库从SQL转储:如何?
我试图用KOTLIN和SQLITE后端使用requery https://github.com/requery/requery库。 我有一个SQL转储,我想要在应用程序的第一次启动时写入到SQLite数据库,然后我想映射数据类到数据库实体与查询。 这里是创建表的数据源初始化:
if (!(DataStorage.isDbInitialized(context))) { val db = writableDatabase val inputStream = context?.resources?.openRawResource(R.raw.dump) val reader = BufferedReader(InputStreamReader(inputStream)) val builder = StringBuilder() var line : String? var end = false while (!end) { line = reader.readLine() if(line == null) { end = true } else { builder.append(line) } } db.execSQL(builder.toString()) onCreate(db) DataStorage.setDbInitialized(context) }
我必须从SqlitexDatabaseSource和CommonDataSource派生这个类来与Kotlin一起使用。 SQL查询成功执行,但是当我尝试从数据库中选择所有对象时,此请求返回零大小列表:
val result : Result<Feat> = (application as MainApp).dataStore.select(Feat::class).get() result.each { Log.d("TAG", it.name) }
DTO如文档中所述创建:
https://github.com/Syjgin/PathfinderFeats/blob/master/app/src/main/java/com/syjgin/pathfinderfeats/model/Feat.kt
是否有可能使用SQL转储初始化请求数据,或者我必须为每一行创建DTO并通过插入方法提交?
- 如何捕捉RecyclerView项目,以便每个X项目将被视为一个单元来捕捉?
- 点击一个文本视图来改变片段
- 使用RelativeSizeSpan与TextView的textAllCaps为true不起作用
- Android Kotlin子onClick阻止父OnTouch
- 引起:android.database.sqlite.SQLiteException:近“org”:语法错误(代码1):,编译时:
- Kotlin:通过JSONArray迭代
- 在Kotlin的对象字段中带有上下文的Android类
- Android的 – 如何使用Kotlin在SortTableView中设置ColumnComparator
- Android:如何处理从左到右的滑动手势