www pagina org oficial last sqlite blackberry java-me

pagina - sqlite3 doc



Sqlite pendingOperation in Statement prepare (1)

Mi código es:

Statement mstatement = null; URI uri = URI.create(DBPath); sqliteDb = DatabaseFactory.openOrCreate(uri); mStatement = sqliteDb.createStatement(strQuery); mStatement.prepare();

Mi problema es que recibo un error como "Sqlite pendingOperation" en mstatement.prepare () ;. Estoy usando bloques sincronizados en todos y cada uno de los métodos de manejo de bases de datos. Esto está sucediendo mientras se están ejecutando múltiples hilos.


Obtuve mi respuesta yo solo.

Modifiqué todo el método como (en negrita):

Cursor c = null; DBHelper.mStatement = null; Vector followups = new Vector(); **boolean runFlag = true;** synchronized (GlobalVariables.lockObject) { try { **while(runFlag)** SELECT EventId,OldTitle,OrderNumber,Status,Title,Type,UpdateDateTime,Id FROM Questions WHERE EventId=5 AND Type=1 AND (Status=0 OR Status=1 OR Status=2) ORDER BY OrderNumber DBHelper.CreateAndOpenSqliteDBConnection(); DBHelper.mStatement = DBHelper.sqliteDb.createStatement(strQuery); DBHelper.mStatement.prepare(); **if(DBHelper.mStatement == null) { DBHelper.CloseSqliteDBConnection(); runFlag = true; continue; } else { runFlag = false; }** c = DBHelper.mStatement.getCursor(); while (c.next()) { followups.addElement(Followup.getFromCursor(c)); } } **}** catch (Exception ex) { System.out.print(ERRORSTRING + "getUploadFollowupsFromDB: " + ex); } finally { DBHelper.CloseSqliteDBConnection(); } GlobalVariables.lockObject.notifyAll(); } return followups;

Gran Ankit Rox ..