codice:
package skolidspeak.test.test;
import java.sql.Date;
import android.annotation.SuppressLint;
import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;
public class MyDatabase {
SQLiteDatabase mDb;
DbHelper mDbHelper;
Context mContext;
private static final String DB_NAME="info5";//nome del db
private static final int DB_VERSION=1; //numero di versione del nostro db
public MyDatabase(Context ctx){
mContext=ctx;
mDbHelper=new DbHelper(ctx, DB_NAME, null, DB_VERSION); //quando istanziamo questa classe, istanziamo anche l'helper (vedi sotto)
}
public void open(){ //il database su cui agiamo è leggibile/scrivibile
mDb=mDbHelper.getWritableDatabase();
}
public void close(){ //chiudiamo il database su cui agiamo
mDb.close();
}
//i seguenti metodi servono per la lettura/scrittura del db. aggiungete e modificate a discrezione
public void insertanag(String name,String tel1,String ind,String loc,String cap,String prov,String naz,String tipo,String codi,String tel2,String mail,String indop,String locop,String capop,String provop,String nazop){ //metodo per inserire i dati
ContentValues cv=new ContentValues();
cv.put(anagMetaData.CODANAG, codi);
cv.put(anagMetaData.ANAG_NAME_KEY, name);
cv.put(anagMetaData.ANAG_TEL1_KEY, tel1);
cv.put(anagMetaData.ANAG_IND_KEY, ind);
cv.put(anagMetaData.ANAG_LOC_KEY, loc);
cv.put(anagMetaData.ANAG_CAP_KEY, cap);
cv.put(anagMetaData.ANAG_PR_KEY, prov);
cv.put(anagMetaData.ANAG_NAZ_KEY, naz);
cv.put(anagMetaData.ANAG_TIP_KEY, tipo);
cv.put(anagMetaData.ANAG_TEL2_KEY, tel2);
cv.put(anagMetaData.ANAG_INDOP_KEY, indop);
cv.put(anagMetaData.ANAG_LOCOP_KEY, locop);
cv.put(anagMetaData.ANAG_CAPOP_KEY, capop);
cv.put(anagMetaData.ANAG_PROP_KEY, provop);
cv.put(anagMetaData.ANAG_NAZOP_KEY, nazop);
cv.put(anagMetaData.ANAG_EMAIL_KEY, mail);
mDb.insert(anagMetaData.ANAG_TABLE, null, cv);
}
public Cursor fetchAnag(){ //metodo per fare la query di tutti i dati anagrafiche
return mDb.query(anagMetaData.ANAG_TABLE, null,null,null,null,null,null);
}
static class anagMetaData { // public static final String ANAG_LOCALOP_KEY = null;
// i metadati della tabella anagrafiche, accessibili ovunque
static final String ANAG_TABLE = "anagrafiche";
static final String IDANAG= "_id";
static final String CODANAG = "Codice";
static final String ANAG_TIP_KEY = "Tipo";
static final String ANAG_NAME_KEY = "Ragione sociale";
static final String ANAG_TEL1_KEY = "Telefono 1";
static final String ANAG_TEL2_KEY = "Telefono 2";
static final String ANAG_IND_KEY = "Indirizzo";
static final String ANAG_LOC_KEY = "localita";
static final String ANAG_CAP_KEY = "CAP";
static final String ANAG_PR_KEY = "Prov";
static final String ANAG_NAZ_KEY = "Nazione";
static final String ANAG_INDOP_KEY = "Indirizzo Operativa";
static final String ANAG_LOCOP_KEY = "localita Operativa";
static final String ANAG_CAPOP_KEY = "CAP Operativa";
static final String ANAG_PROP_KEY = "Provincia Operativa";
static final String ANAG_NAZOP_KEY = "Nazione Operativa";
static final String ANAG_EMAIL_KEY = "mail";
}
static final String ANAG_TABLE_CREATE = " CREATE TABLE IF NOT EXISTS " //codice sql di creazione della tabella anagrafica
+ anagMetaData.ANAG_TABLE + " ("
+ anagMetaData.IDANAG+ " INTEGER PRIMARY KEY AUTOINCREMENT, "
+ anagMetaData.CODANAG + " text not null, "
+ anagMetaData.ANAG_TIP_KEY + " text not null, "
+ anagMetaData.ANAG_NAME_KEY + " text not null, "
+ anagMetaData.ANAG_TEL1_KEY + " text not null, "
+ anagMetaData.ANAG_TEL2_KEY + " text not null, "
+ anagMetaData.ANAG_IND_KEY + " text not null, "
+ anagMetaData.ANAG_LOC_KEY + " text not null, "
+ anagMetaData.ANAG_CAP_KEY + " text not null, "
+ anagMetaData.ANAG_PR_KEY + " text not null, "
+ anagMetaData.ANAG_NAZ_KEY + " text not null, "
+ anagMetaData.ANAG_INDOP_KEY + " text not null, "
+ anagMetaData.ANAG_LOCOP_KEY + " text not null, "
+ anagMetaData.ANAG_CAPOP_KEY + " text not null, "
+ anagMetaData.ANAG_PROP_KEY + " text not null, "
+ anagMetaData.ANAG_NAZOP_KEY + " text not null, "
+ anagMetaData.ANAG_EMAIL_KEY + " text not null "+");";
class DbHelper extends SQLiteOpenHelper { //classe che ci aiuta nella creazione del db
public DbHelper(Context context, String name, CursorFactory factory,int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase _db) { //solo quando il db viene creato, creiamo le tabelle
_db.execSQL(ANAG_TABLE_CREATE);
}
@Override
public void onUpgrade(SQLiteDatabase _db, int oldVersion, int newVersion) {
//qui mettiamo eventuali modifiche al db, se nella nostra nuova versione della app, il db cambia numero di versione
}
}
}
Grazie