1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 113 114 115 116 117 118 119 120 121 122 123 124 125 126 127 128 129 130 131 132 133 134 135 136 137 138 139 140
| package com.example.rapidego.frigo1;
/**
* Created by rapidego on 16/06/2015.
*/
import android.content.ContentValues;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
public class GestionBDD
{
//variables
private static final int VERSION_BDD = 1;
private static final String NOM_BDD = "viandes.db";
private static final String TABLE_VIANDES = "table_viandes";
private static final String COL_ID = "ID";
private static final int NUM_COL_ID = 0;
private static final String COL_TYPE = "TYPE";
private static final int NUM_COL_TYPE = 1;
private static final String COL_ETAT = "ETAT";
private static final int NUM_COL_ETAT = 2;
private static final String COL_ENDROIT = "ENDROIT";
private static final int NUM_COL_ENDROIT = 3;
private static final String COL_NOMBRE = "NOMBRE";
private static final int NUM_COL_NOMBRE = 4;
private SQLiteDatabase bdd; // Declare objet bdd
private MaBaseSQLite maBaseSQLite; // Declare objet maBaseSQLite
private String titre;
//Constructeur rempli
public GestionBDD(Affichage1 context)
{
//on cree la BDD et sa table
maBaseSQLite = new MaBaseSQLite(context, NOM_BDD, null, VERSION_BDD);
}
public GestionBDD() //constructeur vide
{
}
public void open()
{
//on ouvre la bdd en ecriture
bdd = maBaseSQLite.getWritableDatabase();
}
public void close()
{
//on ferme l'acces a la bdd
bdd.close();
}
public SQLiteDatabase getBdd()
{
return bdd;
}
public long insertViandes(Viandes viandes)
{
//creation d'un ContentValues (fonctionne comme une HashMap
ContentValues values = new ContentValues();
//On lui ajoute une valeur associee a une clef (qui est le nom de la colonne
//dans laquelle on veut mettre la valeur.
values.put(COL_TYPE, viandes.getType());
values.put(COL_ETAT, viandes.getEtat());
values.put(COL_ENDROIT, viandes.getEndroit());
values.put(COL_NOMBRE, viandes.getNombre());
//On insere l'objet dans la BDD via le ContentValues
return bdd.insert(TABLE_VIANDES, null, values);
}
public int upDateViandes(int id, Viandes viandes)
{
// la mise a jour de la viande dans la BDD fonctionne plus ou moins
//comme une insertion
// Il faut simplement preciser quelle viande il faut mettre a jour
// grace a l'ID
ContentValues values = new ContentValues();
values.put(COL_TYPE, viandes.getType());
values.put(COL_ETAT, viandes.getEtat());
values.put(COL_ENDROIT, viandes.getEndroit());
values.put(COL_NOMBRE, viandes.getNombre());
return bdd.update(TABLE_VIANDES, values, COL_ID + " = " + id, null);
}
public Viandes cursorToViandes(Cursor cursor) // transforme un cursor en une viande
{
//Si aucun element n'a ete trouve dans la requete, on renvoie null.
if (cursor.getCount() == 0)
return null;
//Sinon on se place sur le premier element
cursor.moveToFirst();
//On cree une viande
Viandes viandes = new Viandes();
//On lui affecte toutes les infos grace aux infos contenues dans le Cursor
viandes.setId(cursor.getInt(NUM_COL_ID));
viandes.setType(cursor.getString(NUM_COL_TYPE));
viandes.setEtat(cursor.getString(NUM_COL_ETAT));
viandes.setNombre(cursor.getString(NUM_COL_NOMBRE));
viandes.setEndroit(cursor.getString(NUM_COL_ENDROIT));
//On ferme le Cursor
cursor.close();
//On retourne la viande
return viandes;
}
public int removeViandesWithdID(int id)
{
//suppression d'une viande de la BDD grace a l'ID
return bdd.delete(TABLE_VIANDES, COL_ID + " = " + id, null);
}
public Cursor GetAll()
{
Cursor data = bdd.query(TABLE_VIANDES, new String[]{COL_ID, COL_TYPE, COL_ETAT,
COL_NOMBRE, COL_ENDROIT}, COL_TYPE + " LIKE \"" + titre + " \"",
null, null, null, null);
return data;
}
public Cursor crerColonne()
{
return bdd.rawQuery("SELECT ID as_id, TYPE FROM table_viandes", null);
}
} |
Partager