Android – cómo utilizar "select last_insert_rowid ();"

Soy novato en Android.

Quiero mostrar un nuevo ID en TextView . Por lo tanto, sólo pienso en obtener la última ID que había sido almacenar en la base de datos y declarar como Integer agregar 1 al valor que obtiene luego mostrar a la TextView .

He leído muchas de las preguntas relativas a la obtención de la última ID. ¿Cómo puedo utilizar select last_insert_rowid(); ?

¡Gracias!

3 Solutions collect form web for “Android – cómo utilizar "select last_insert_rowid ();"”

last_insert_rowid() sólo funciona para los registros que se han insertado en la misma sesión.

Si su columna se declara como INTEGER PRIMARY KEY , SQLite generará automáticamente un valor si no especifica uno en un nuevo registro.

Si realmente necesita el ID antes de insertar el registro, puede ejecutar algo como esto:

 SELECT max(_id) FROM MyTable 

Si usa autoincrement use

 SELECT * from SQLITE_SEQUENCE; 

Para obtener el último identificador.

 Cursor c = database.rawQuery("SELECT last_insert_rowid()", null); c.moveToFirst(); int id = c.getInt(0); id += 1; 

Soy novato también, así que no puedo explicar muy bien. Lo anterior obtendrá el último ID de inserto de la misma sesión. No funcionará si se inicia una nueva sesión, es decir, se inserta algo y se cierra la conexión y se vuelve a abrir, ya que a continuación, devolverá 0, por lo que tendrá que tener en cuenta que su TextView siempre mostrará 1. Al igual que Leí muchas preguntas sobre él sin saber cómo implementarlo. El código anterior es cómo logré usarlo sin obtener excepciones de outofbounds.

  • Prueba de base de datos SQLite en Robolectric
  • Cómo actualizar la base de datos Sqlite para una sola columna utilizando cláusula WHERE en android
  • Consulta SQL para la relación de los hijos progenitores
  • Creación de tablas en la base de datos sqlite en android
  • Leer desde una base de datos en android a un arraylist
  • ¿Cuán cuidado debo tener con el hilo de seguridad al crear métodos / actividades que interactúan con la base de datos SQLite?
  • ¿Por qué se ha borrado la base de datos SQLite al borrar los datos de la aplicación de Application Management?
  • Cómo leer una columna específica de SQLiteBatabase existente en Android?
  • Android rawQuery - ¿Hay una manera de usar "IN" parametrizada para una colección de datos
  • ¿Cómo puedo simular una actualización de la aplicación?
  • Necesito el equivalente SQLite de MySQL para trabajar con unix timestamps
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.