Autore Topic: [facile] Creare Database da file csv  (Letto 9440 volte)

Offline Ricky`

  • Amministratore
  • Utente storico
  • *****
  • Post: 3459
  • Respect: +503
    • Github
    • Google+
    • rciovati
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #15 il: 18 Gennaio 2012, 10:32:09 CET »
0
ma se il file è molto grande (10000 o 100000 righe) c'e' un modo per velocizzare il processo?

Dai un occhio a questa discussione:

Out Of What Box? » Android: Using DatabaseUtils.InsertHelper for faster insertions into SQLite database

Devi modificare un po' il codice ma sono sicuro ne varrà la pena :)
« Ultima modifica: 18 Gennaio 2012, 10:36:43 CET da Ricky` »

Offline Trigun

  • Utente normale
  • ***
  • Post: 181
  • Respect: +4
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #16 il: 18 Gennaio 2012, 10:46:51 CET »
0
si ma così velocizzi il processo di scrittura e quello lo sapevo gia :-P il mio problema è velocizzare la lettura

Offline mikeblue

  • Nuovo arrivato
  • *
  • Post: 42
  • Respect: +3
    • @MikeBlue3003
    • Mostra profilo
    • home page
  • Sistema operativo:
    Ubuntu 11.04, Windows 7
Re:[facile] Creare Database da file csv
« Risposta #17 il: 21 Marzo 2012, 15:23:54 CET »
0
il problema delle lettere accentate non si può risolvere?

-----------------------------

risolto
« Ultima modifica: 23 Marzo 2012, 14:22:53 CET da mikeblue »
"Si ha la sensazione che ogni qualvolta si esca di casa, al proprio ritorno ci sia un nuovo prodotto Google appena lanciato. " (Philipp Lenssen)

Offline Ansem

  • Utente junior
  • **
  • Post: 106
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    HTC HD2
  • Sistema operativo:
    4.0.4
Re:[facile] Creare Database da file csv
« Risposta #18 il: 23 Aprile 2012, 18:18:25 CEST »
0
Raga una domanda: posso sfruttare questo metodo per memorizzare dei valori da inserire poi in un menù a tendina (spinner)?
devo metterci dentro 2/3 valori di tipo stringa.
O c'è un metodo più semplice per memorizzare così pochi file?

Offline esempio

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #19 il: 28 Aprile 2012, 17:36:43 CEST »
0
il problema delle lettere accentate non si può risolvere?

-----------------------------

risolto

puoi spiegarci come?? grazie!

Offline mikeblue

  • Nuovo arrivato
  • *
  • Post: 42
  • Respect: +3
    • @MikeBlue3003
    • Mostra profilo
    • home page
  • Sistema operativo:
    Ubuntu 11.04, Windows 7
Re:[facile] Creare Database da file csv
« Risposta #20 il: 28 Aprile 2012, 19:14:15 CEST »
0
puoi spiegarci come?? grazie!

con notepad++
  • crei un documento nuovo
  • Formato->Codifica in UTF-8
  • scrivi il documento e poi salvi
"Si ha la sensazione che ogni qualvolta si esca di casa, al proprio ritorno ci sia un nuovo prodotto Google appena lanciato. " (Philipp Lenssen)

Offline esempio

  • Nuovo arrivato
  • *
  • Post: 3
  • Respect: 0
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #21 il: 29 Aprile 2012, 18:08:34 CEST »
0
Grazie 1000 :-)
 proverò...  ;-)

Offline roberto.rocca2012

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    2.3.3
Re:[facile] Creare Database da file csv
« Risposta #22 il: 05 Maggio 2012, 17:18:28 CEST »
0
Ciao,
premetto che sono anche io nuovo di Android.
Ho caricato il tuo esempio che mi sembra interessante ma non riesco nemmeno a lanciarlo perchè mi dà errore sulle seguenti variabili evidenziate in rosso:

CursorAdapter adapter = new SimpleHeadersCursorAdapter(this,
   R.layout.simple_list_item, cursor, new String[] { Spesa.NAME },
   new int[] { R.id.list_item_name }, hash, Spesa.TYPE,
   R.id.simple_header);
setListAdapter(adapter);

L'errore che mi segnala è che la variabile non può essere risolta oppure non è un campo.
Ovviamente non mi fa lanciare l'applicazione.
Da cosa dipende? Molte grazie

Offline blackgin

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 1328
  • Respect: +146
    • Google+
    • blackgins
    • blackginsoft
    • Mostra profilo
  • Dispositivo Android:
    Galaxy Nexus
  • Sistema operativo:
    Mac OSX 10.8
Re:[facile] Creare Database da file csv
« Risposta #23 il: 06 Maggio 2012, 12:34:30 CEST »
0
Hai importato nomepackage.R?
Postate il LogCat LogCat LogCat LogCat LogCat

Offline roberto.rocca2012

  • Nuovo arrivato
  • *
  • Post: 12
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    2.3.3
Re:[facile] Creare Database da file csv
« Risposta #24 il: 19 Maggio 2012, 10:31:28 CEST »
0
Ti ringrazio, Blackgin!
Il tuo suggerimento sull'import del nomepackage.R ha funzionato!!!!
Non mi è ancora molto chiaro perchè ma forse dipende dal fatto che sono troppo inesperto di Android.
Probabilmente nel package sono definite le variabili che mi davano errore e quindi, non importandolo, giustamente provocava l'errore.
Continuerò a perseverare nello studio.
Il mio obiettivo è caricare una tabella - di 4-6 colonne e qualche migliaio di righe - in formato csv sulla SD, importarlo in un database SQLite nel telefono ed effettuare delle query sul db così importato.
Credo che ho ancora molto da studiare.
Alla prossima!


Offline Jordywild

  • Nuovo arrivato
  • *
  • Post: 8
  • Respect: 0
    • Mostra profilo
  • Dispositivo Android:
    Nexus 4
  • Sistema operativo:
    Mac OS X 10.6.8
Re:[facile] Creare Database da file csv
« Risposta #25 il: 16 Agosto 2012, 17:10:13 CEST »
0
Ciao a tutti.
Ho una domanda: il database creato, fisicamente dove si trova?
Con Eclipse ho aperto la prospettiva DDMS, ma non trovo il database creato: vorrei vedere come vengono caricati i record.

Grazie!  ;-)

Offline bradipao

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 3763
  • keep it simple
  • Respect: +526
    • Github
    • Google+
    • bradipao
    • Mostra profilo
  • Dispositivo Android:
    Nexus 5
  • Play Store ID:
    Bradipao
  • Sistema operativo:
    W7
Re:[facile] Creare Database da file csv
« Risposta #26 il: 16 Agosto 2012, 18:17:57 CEST »
0
Ciao a tutti.
Ho una domanda: il database creato, fisicamente dove si trova?
Con Eclipse ho aperto la prospettiva DDMS, ma non trovo il database creato: vorrei vedere come vengono caricati i record.

In questa pagina della documentazione ufficiale trovi il formato del path del database ed anche come prelevarlo.
sqlite3 | Android Developers
NON rispondo a domande nei messaggi privati
Bradipao @ Play Store

Offline tank

  • Nuovo arrivato
  • *
  • Post: 23
  • Respect: 0
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #27 il: 19 Marzo 2014, 14:12:21 CET »
0
Salve, chiedo scusa se riporto su questo vecchio topic, ma ho veramente bisogno di sapere una cosa: sto provando ad aggiungere delle colonne al database, senza successo, qualcuno saprebbe indicarmi i passaggi corretti per riuscirci? Vi posto il codice da me modificato...

Ho modificato il file dati.csv chiamandolo "dati2.csv" e aggiungendo una colonna:
Off-Topic:
1,Carote,V,PROVA
2,Insalata,V,PROVA
3,Pomodori,V,PROVA
4,Melanzane,V,PROVA
5,Cetrioli,V,PROVA
6,Cipolle,V,PROVA
7,Rucola,V,PROVA
8,Mele,F,PROVA
9,Pere,F,PROVA
10,Arance,F,PROVA
11,Mandarini,F,PROVA
12,Banane,F,PROVA
13,Sapone,C,PROVA
14,Spazzolone,C,PROVA
15,Stracci,C,PROVA
16,Latte,A,PROVA
17,Cereali,A,PROVA
18,Biscotti,A,PROVA
19,Pane,A,PROVA
20,Pasta,A,PROVA

Spesa.java: in maniera intuitiva ho semplicemente aggiunto PROVA come potete vedere qui:
Codice (Java): [Seleziona]
package it.pinabello.android.tutorial;

import java.util.StringTokenizer;

import android.content.ContentValues;

public class Spesa {
        public final static String TABLE_NAME   = "SHOP_LIST";
        public final static String ID                   = "_id";
        public final static String NAME                 = "NAME";
        public final static String TYPE                 = "TYPE";
        public final static String PROVA                = "PROVA";
       
        public static ContentValues getContentValues(String value) {
                ContentValues result = new ContentValues();
                StringTokenizer stringTokenizer = new StringTokenizer(value, ",");
                result.put(Spesa.ID, stringTokenizer.nextToken());
                result.put(Spesa.NAME, stringTokenizer.nextToken());
                result.put(Spesa.TYPE, stringTokenizer.nextToken());
                result.put(Spesa.PROVA, stringTokenizer.nextToken());
                return result;
        }
}

SimpleHeaderTutorialDB.java: stessa cosa anche qui, ho solo aggiunto PROVA nei metodi onUpgrade e onCreate, e ho modificato il nome del file csv:
Codice (Java): [Seleziona]
package it.pinabello.android.tutorial;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;

import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteOpenHelper;



public class SimpleHeaderTutorialDB extends SQLiteOpenHelper {
       
        public final static String DB_NAME = "simpleHeaderTutorial.db";
        private final static  int DATABASE_VERSION = 5;
       
        public SimpleHeaderTutorialDB(Context context) {
                super(context, DB_NAME, null, DATABASE_VERSION);
        }
       
        public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
                db.execSQL("DROP TABLE " + Spesa.TABLE_NAME);
                db.execSQL("CREATE TABLE " + Spesa.TABLE_NAME + " ("
                + Spesa.ID + " INTEGER PRIMARY KEY,"
                + Spesa.NAME + " TEXT,"
                + Spesa.TYPE + " TEXT"
                + Spesa.PROVA + " TEXT"
                + ");");
                load(db, new InputStreamReader(this.getClass().getResourceAsStream("dati2.csv")));
        }
       
        @Override
        public void onCreate(SQLiteDatabase db) {
                db.execSQL("CREATE TABLE " + Spesa.TABLE_NAME + " ("
                + Spesa.ID + " INTEGER PRIMARY KEY,"
                + Spesa.NAME + " TEXT,"
                + Spesa.TYPE + " TEXT"
                + Spesa.PROVA + " TEXT"
                + ");");
                load(db, new InputStreamReader(this.getClass().getResourceAsStream("dati2.csv")));
        }
       
        private void load(SQLiteDatabase db, InputStreamReader in) {
                BufferedReader reader = new BufferedReader(in);
                try {
                        String line = null;
                        while ( (line = reader.readLine()) != null ) {
                                db.insert(Spesa.TABLE_NAME, null, Spesa.getContentValues(line));
                        }
                        reader.close();
                } catch (IOException e) {
                        e.printStackTrace();
                } finally {
                        if (in != null) {
                                try {
                                        in.close();
                                } catch (IOException e) {
                                }
                        }
                }
        }

}

SimpleListActivity.java: ho fatto le relative aggiunte al cursor e all'adapter (su quest'ultimo però non sono sicuro di aver fatto bene):
Codice (Java): [Seleziona]
package it.pinabello.android.tutorial;

import java.util.HashMap;

import android.app.Activity;
import android.app.ListActivity;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.os.Bundle;
import android.widget.Adapter;
import android.widget.CursorAdapter;
import android.widget.ListAdapter;

public class SimpleListActivity extends ListActivity {
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        // Reperimento riferimento al database.
        SimpleHeaderTutorialDB  simpleHeaderTutorialDB  = new SimpleHeaderTutorialDB(this);
        SQLiteDatabase                  database                                = simpleHeaderTutorialDB.getReadableDatabase();
        /*
         * Esecuzione query si noti il valore "Spesa.TYPE + ", " + Spesa.NAME" che esegue l'ordinamento
         * del cursore prima per tipo e poi per nome
         */

                Cursor cursor = database.query(Spesa.TABLE_NAME, new String[] {
                                Spesa.ID, Spesa.NAME, Spesa.TYPE, Spesa.PROVA }, null, null, null, null,
                                Spesa.TYPE + ", " + Spesa.NAME + ", " + Spesa.PROVA);
        startManagingCursor(cursor);
        /**
         * HashMap che contiene le coppi tipo/descrizione, per tali valori sarebbe più corretto utilizzare
         * il file values/array.xml, per semplicità in questo tutorial viene gestito quì.
         */

        HashMap<String, String> hash = new HashMap<String, String>();
        hash.put("V", "Verdure");
        hash.put("F", "Frutta");
        hash.put("A", "Altro");
        hash.put("V", "Verdure");
        hash.put("C", "Casalinghi");
        /**
         * Creazione SimpleHeadersCursorAdapter si noti in particolare :
         * R.layout.simple_list_item    : custom item layout
         * hash HashMap                                 : tipo /descrizione appena creato
         * Spesa.TYPE                                   : nome campo del cursore che contiene la categoria
         * R.id.simple_header                   : id del TextView che contiene il titolo
         */

                CursorAdapter adapter = new SimpleHeadersCursorAdapter(this,
                                R.layout.simple_list_item, cursor, new String[] { Spesa.NAME, Spesa.PROVA },
                                new int[] { R.id.list_item_name, R.id.list_item_name2 }, hash, Spesa.TYPE,
                                R.id.simple_header);
        setListAdapter(adapter);
    }
}

SimpleHeadersCursorAdapter.java: qui il codice è rimasto invariato:
Codice (Java): [Seleziona]
package it.pinabello.android.tutorial;

import java.util.HashMap;

import android.content.Context;
import android.database.Cursor;
import android.view.View;
import android.view.ViewGroup;
import android.widget.SimpleCursorAdapter;
import android.widget.TextView;

public class SimpleHeadersCursorAdapter extends SimpleCursorAdapter {
       
        private HashMap<String, String>         headers;
        private HashMap<String, Integer>        headersIndex = new HashMap<String, Integer>();
        private Cursor                                          cursor;
        private int                                             fieldIndex;
        private int                                             headerId;
        /**
         * @param headers       :       hashmap che contiene come chiavi i possibili valori del campo da usare per
         *                                              la suddivisione (V,F,A,C per questo tutorial) e come value la descrizione da
         *                                              visualizzare nell'header.
         * @param fieldName     :       nome del campo presente nel cursore da usare per la suddivisione
         *                                              (TYPE per questo tutorial)
         * @param headerId      :       id della TextView del custom layout utilizzato per la lista
         *                                              (R.id.simple_header per questo tutorial)
         */

        public SimpleHeadersCursorAdapter(Context arg0, int arg1, Cursor cursor, String[] arg3, int[] arg4, HashMap<String, String> headers, String fieldName, int headerId) {
                super(arg0, arg1, cursor, arg3, arg4);
                this.headers    = headers;
                this.cursor             = cursor;
                this.fieldIndex = cursor.getColumnIndex(fieldName); // Ottengo l'indice del campo del cursore
                this.headerId   = headerId;
        }
       
       
        @Override
        public View getView(int position, View convertView, ViewGroup parent) {
                cursor.moveToPosition(position);
                /**
                 * L'hashmap headersIndex viene valorizzato con la coppia
                 *      chiave/valore "tipo/posizione header da visualizzare"
                 * se il tipo non è presente come chiave nell'hashmap significa che stiamo incontrando il primo
                 * oggetto di questa categoria e che a questa posizione è necessario rendere visibile il titolo.
                 * Per tutti gli altri oggetti della stessa categoria la condizione sarà false e il titolo non verrà
                 * visualizzato.
                 * Perchè questa logica funzioni correttamente il cursore deve essere ordinato per categoria.
                 **/

                if (!headersIndex.containsKey(cursor.getString(fieldIndex))) {
                        headersIndex.put(cursor.getString(fieldIndex), position);
                }
                View            view            = super.getView(position, convertView, parent);
                // Ottengo la TestView del titolo
                TextView        textView        = (TextView) view.findViewById(headerId);
                /**
                 * Se questa posizione è contenuta nell'HashMap headersIndex il titolo deve essere visibile
                 */

                if (headersIndex.containsValue(position)) {
                        // Il titolo viene reso visibile
                        textView.setVisibility(View.VISIBLE);
                        // Viene reperita la descrizione del titolo e settata nella TextView
                        textView.setText(headers.get(cursor.getString(fieldIndex)));
                } else {
                        // Il titolo viene reso nascosto
                        textView.setVisibility(View.GONE);
                        // Rest del titolo
                        textView.setText("");
                }
                return view;
        }
       
        /*
         * Il metodo refreshHeaders va richiamato nel caso in cui vengano eliminati o aggiunti oggetti
         * alla lista, in quanto svuotanto l'hashMap si richiede un nuovo calcolo della posizione dei titoli
         */

        public void refreshHeaders() {
                headersIndex = new HashMap<String, Integer>();
        }
       

}

E ovviamente ho aggiunto una textview a simple_list_item.xml:
Codice (XML): [Seleziona]
<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
        android:id="@+id/layout_root" android:orientation="vertical"
        android:layout_width="fill_parent" android:paddingLeft="3px"
        android:layout_height="fill_parent">
        <TextView android:id="@+id/simple_header" android:textStyle="bold"
                android:textColor="#000" android:textColorHighlight="#000"
                android:background="#DDD" android:layout_centerInParent="true"
                android:visibility="gone" android:layout_width="fill_parent"
                android:layout_height="wrap_content" />
        <TextView android:id="@+id/list_item_name" style="@style/listItemTitle"
                android:text="name" android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
        <TextView android:id="@+id/list_item_name2" style="@style/listItemTitle"
                android:text="name" android:layout_width="wrap_content"
                android:layout_height="wrap_content" />
</LinearLayout>

Infine, vi posto il logcat:
Codice: [Seleziona]
03-19 14:10:40.509: E/Trace(6585): error opening trace file: No such file or directory (2)
03-19 14:10:40.559: E/SQLiteLog(6585): (1) no such column: PROVA
03-19 14:10:40.569: W/dalvikvm(6585): threadid=1: thread exiting with uncaught exception (group=0x41184600)
03-19 14:10:40.569: E/AndroidRuntime(6585): FATAL EXCEPTION: main
03-19 14:10:40.569: E/AndroidRuntime(6585): java.lang.RuntimeException: Unable to start activity ComponentInfo{it.pinabello.android.tutorial/it.pinabello.android.tutorial.SimpleListActivity}: android.database.sqlite.SQLiteException: no such column: PROVA (code 1): , while compiling: SELECT _id, NAME, TYPE, PROVA FROM SHOP_LIST ORDER BY TYPE, NAME, PROVA
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2332)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread.handleLaunchActivity(ActivityThread.java:2368)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread.access$600(ActivityThread.java:151)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread$H.handleMessage(ActivityThread.java:1330)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.os.Handler.dispatchMessage(Handler.java:99)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.os.Looper.loop(Looper.java:155)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread.main(ActivityThread.java:5536)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at java.lang.reflect.Method.invokeNative(Native Method)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at java.lang.reflect.Method.invoke(Method.java:511)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:1074)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:841)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at dalvik.system.NativeStart.main(Native Method)
03-19 14:10:40.569: E/AndroidRuntime(6585): Caused by: android.database.sqlite.SQLiteException: no such column: PROVA (code 1): , while compiling: SELECT _id, NAME, TYPE, PROVA FROM SHOP_LIST ORDER BY TYPE, NAME, PROVA
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteConnection.nativePrepareStatement(Native Method)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteConnection.acquirePreparedStatement(SQLiteConnection.java:909)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteConnection.prepare(SQLiteConnection.java:520)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteSession.prepare(SQLiteSession.java:588)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:58)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:37)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:65)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1370)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1217)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1088)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1256)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at it.pinabello.android.tutorial.SimpleListActivity.onCreate(SimpleListActivity.java:25)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.Activity.performCreate(Activity.java:5066)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.Instrumentation.callActivityOnCreate(Instrumentation.java:1102)
03-19 14:10:40.569: E/AndroidRuntime(6585):         at android.app.ActivityThread.performLaunchActivity(ActivityThread.java:2288)
03-19 14:10:40.569: E/AndroidRuntime(6585):         ... 11 more


Sono disperato :-( sapreste dirmi dove sbaglio?

Offline Nicola_D

  • Moderatore globale
  • Utente storico
  • *****
  • Post: 2373
  • SBAGLIATO!
  • Respect: +305
    • Github
    • Google+
    • nicoladorigatti
    • Mostra profilo
  • Dispositivo Android:
    Google Nexus 4, Nexus S, Nexus 7(2012)
  • Sistema operativo:
    Windows 7
Re:[facile] Creare Database da file csv
« Risposta #28 il: 19 Marzo 2014, 14:28:47 CET »
0
nell'onupgrade fai un ALTER TABLE ADD COLUMN invece che droppare la tabella.

L'errore te lo da anche se ricrei il db da zero?
LOGCAT: Non sai cos'è? -> Android Debug Bridge | Android Developers
               Dov'è in Eclipse? -> Window -> Open Prospective -> DDMS e guarda in basso!
[Obbligatorio] Logcat, questo sconosciuto! (Gruppo AndDev.it LOGTFO) - Android Developers Italia

Offline tank

  • Nuovo arrivato
  • *
  • Post: 23
  • Respect: 0
    • Mostra profilo
Re:[facile] Creare Database da file csv
« Risposta #29 il: 19 Marzo 2014, 15:01:14 CET »
0
nell'onupgrade fai un ALTER TABLE ADD COLUMN invece che droppare la tabella.
Fatto, ma niente, dà lo stesso errore...

Come ricreo il database da zero?