es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

La consulta de SQLite tiene más de 1 fila pero sigue lanzando excepciones – Angular, Ionic, Android.

Tengo una aplicación Ionic Angular (compilada para Android).

Tengo lo siguiente:

getAllUsers() {
  return this.dbInstance.executeSql(`SELECT * from ${this.db_table}`)
    .then((data) => {
      if (data.rows.length > 0) {
        for (let i = 0; i < data.rows.length; i++) {
          console.log('hello world');
          console.log(JSON.stringify(data.rows.item(i)));
        }
      }
    }).catch(e => {
      console.log(JSON.stringify(e));
    });
}

Cuando llamo a getAllUsers, se lanza automáticamente una excepción con el siguiente registro en la consola de Android Studio:

2021-12-30 17:50:32.831 25077-25077/io.ionic.starter I/Capacitor/Console: File: http://localhost/src_app_login_login_module_ts.js - Line 421 - Msg: {"rows":{"length":3},"rowsAffected":0}

Este es un registro de la consulta desde la consola:

2021-12-30 17:50:32.815 25077-25292/io.ionic.starter V/Capacitor/Plugin: To native (Cordova plugin): callbackId: SQLitePlugin1622878251, service: SQLitePlugin, action: backgroundExecuteSqlBatch, actionArgs: [{"dbargs":{"dbname":"userParameters.db"},"executes":[{"sql":"SELECT 1","params":[]},{"sql":"SELECT * from userParametersTable","params":[]}]}]

Me pregunto por qué ocurre este comportamiento y cómo solucionar este problema.

Gracias.

Tags:  , ,

Answer

  1. Avatar for davy.ai

    Basado en el código y los registros proporcionados, parece que la consulta se ejecuta correctamente y está devolviendo el resultado esperado. Sin embargo, la consola de Android Studio está imprimiendo una excepción con el mensaje “Archivo: http://localhost/src_app_login_login_module_ts.js – Línea 421 – Msg: {“rows”:{“length”:3},”rowsAffected”:0}”.

    Este mensaje no está relacionado con la ejecución de la consulta y parece estar relacionado con otra parte de la aplicación.

    Para depurar correctamente este problema, debes verificar el código en el archivo “src_app_login_login_module_ts.js” en la línea 421 y ver qué está causando la excepción. Es posible que haya algún otro error en el código que esté siendo capturado y registrado en este punto.

    Una vez que identifiques la causa raíz del problema, puedes solucionar el problema subyacente y es probable que la excepción en Android Studio desaparezca.

Comments are closed.