SQLite
 sql >> база данни >  >> RDS >> SQLite

Android стая - Как да изчистите sqlite_sequence за цялата таблица

Изглежда, че базата данни за стаи не поддържа редактиране на таблицата sqlite_sequence или чрез DAO, или чрез необработена заявка. Вместо това, ето как се справих с този проблем (Котлин):

class NonRoomDb(context:Context) : SQLiteOpenHelper(context, DB_NAME, null, DB_VERSION) {
    override fun onCreate(db: SQLiteDatabase?) {}
    override fun onUpgrade(db: SQLiteDatabase?, oldVersion: Int, newVersion: Int) {}
}

fun resetPointer(context:Context, tableName:String) {
  val nonRoomDb = NonRoomDb(context)
  nonRoomDb.writableDatabase.execSQL("DELETE FROM sqlite_sequence WHERE name='$tableName';")
  nonRoomDb.close()
}


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. SQLite - Актуализиране на данни

  2. Открит е теч на база данни на SQLite

  3. onCreate() на RoomDatabase.Callback() не беше извикан след успешно извикване на .build()

  4. 3 начина за намиране на редове, които съдържат малки букви в SQLite

  5. Грешка в Android SQLite:номерът на променливата трябва да е между ?1 и ?999