Я использую Room в своем приложении и при тестировании миграций я сделал прямую вставку (не используя класс Entity)
val values = ContentValues()
values.put("id","id0")
values.put("local_id","local_id0")
values.put("first_name","first_name")
values.put("last_name","last_name")
values.put("email","email")
db.insert("table", SQLiteDatabase.CONFLICT_REPLACE, values)
У меня есть столбец с именем present, который является логическим, и я не назначаю никакихзначение при вставке в качестве ненулевого значения.Но после вставки, когда я проверяю, оно имеет значение true.Как это происходит, насколько я понимаю, sqlite присваивает значение null по умолчанию
из сгенерированного файла json:
"createSql": "CREATE TABLE IF NOT EXISTS `${TABLE_NAME}` (`local_id` TEXT NOT NULL, `id` TEXT, `first_name` TEXT, `last_name` TEXT, `email` TEXT, `present` INTEGER NOT NULL, PRIMARY KEY(`local_id`))"