Autore Topic: Bad request for field slot  (Letto 382 volte)

Offline android

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Samsung mini2
  • Sistema operativo:
    Windows 7
Bad request for field slot
« il: 07 Settembre 2013, 17:10:49 CEST »
0
Ciao a tutti!
Sto implementando un database sqlite per un app android in cui memorizzo alcuni dati in una tabella cosi' strutturata:
public interface PuntiTable extends BaseColumns
{
   String TABLE_NAME = "province";

   String NOME = "nome";
   String LATITUDINE = "latitudine";
   String LONGITUDINE = "longitudine";
   String ALTITUDINE = "altitudine";
   String COLORE = "colore";
   
   String[] COLUMNS = new String[]
   { _ID, NOME, LATITUDINE, LONGITUDINE, ALTITUDINE, COLORE };
}

La tabella viene creata cosi':
@Override
   public void onCreate(SQLiteDatabase db)
   {
      Log.d(DATABASE_NAME, "creazione tabella");
      String sql = "CREATE TABLE {0} ({1} INTEGER PRIMARY KEY AUTOINCREMENT, {2} TEXT NOT NULL,{3} DOUBLE NOT NULL,{4} DOUBLE NOT NULL,{5} DOUBLE NOT NULL,{3} INTEGER NOT NULL);";
      db.execSQL(MessageFormat.format(sql, PuntiTable.TABLE_NAME, PuntiTable._ID, PuntiTable.NOME, PuntiTable.LATITUDINE, PuntiTable.LONGITUDINE, PuntiTable.ALTITUDINE, PuntiTable.COLORE  ));
      inserisciPunti(db);
      
   }

Quando vado a leggere i dati dalla tabella Sqlite col seguente comando:
try
      {
         while (c.moveToNext())
         {
            
            
            cachedMarkers2.add(new Marker( c.getString(c.getColumnIndex("NOME")), c.getDouble(c.getColumnIndex("latitudine")), c.getDouble(c.getColumnIndex("longitudine")), c.getDouble(c.getColumnIndex("altitudine")), c.getInt(c.getColumnIndex("colore"))));
            ARData.addMarkers(cachedMarkers2);
            
         }
      }
      finally
      {
         
         c.close();
         databaseHelper.close();
      }

riscontro il seguente errore dal logcat
09-07 16:53:43.339: E/CursorWindow(3857): Bad request for field slot 0,3. numRows = 110, numColumns = 3
Il problema e' che prima avevo 110 righe ma adesso sono 5 e le colonne sono 6.
Esiste un modo per pulire la cache di eclipse o qualcosa del genere?
Penso che sia rimasto memorizzato da qualche parte il database precedente

Grazie a tutti quelli che mi aiuteranno