Page 5 - finalgarde
P. 5

Comment utiliser SQLite sous Android par Axon de Tuto Mobile (Tuto Mobile)


            private static final int VERSION_BDD = 1;
            private static final String NOM_BDD = "eleves.db";

            private static final String TABLE_LIVRES = "table_livres";
            private static final String COL_ID = "ID";
            private static final int NUM_COL_ID = 0;
            private static final String COL_ISBN = "ISBN";
            private static final int NUM_COL_ISBN = 1;
            private static final String COL_TITRE = "Titre";
            private static final int NUM_COL_TITRE = 2;

            private SQLiteDatabase bdd;

            private MaBaseSQLite maBaseSQLite;

            public LivresBDD(Context context){
             //On crée la BDD et sa table
             maBaseSQLite = new MaBaseSQLite(context, NOM_BDD, null, VERSION_BDD);
            }

            public void open(){
             //on ouvre la BDD en écriture
             bdd = maBaseSQLite.getWritableDatabase();
            }

            public void close(){
             //on ferme l'accès à la BDD
             bdd.close();
            }

            public SQLiteDatabase getBDD(){
             return bdd;
            }

            public long insertLivre(Livre livre){
             //Création d'un ContentValues (fonctionne comme une HashMap)
             ContentValues values = new ContentValues();
             //on lui ajoute une valeur associée à une clé (qui est le nom de la colonne dans laquelle on veut mettre la valeur)
             values.put(COL_ISBN, livre.getIsbn());
             values.put(COL_TITRE, livre.getTitre());
             //on insère l'objet dans la BDD via le ContentValues
             return bdd.insert(TABLE_LIVRES, null, values);
            }

            public int updateLivre(int id, Livre livre){
             //La mise à jour d'un livre dans la BDD fonctionne plus ou moins comme une insertion
             //il faut simple préciser quelle livre on doit mettre à jour grâce à l'ID
             ContentValues values = new ContentValues();
             values.put(COL_ISBN, livre.getIsbn());
             values.put(COL_TITRE, livre.getTitre());
             return bdd.update(TABLE_LIVRES, values, COL_ID + " = " +id, null);
            }

            public int removeLivreWithID(int id){
             //Suppression d'un livre de la BDD grâce à l'ID
             return bdd.delete(TABLE_LIVRES, COL_ID + " = " +id, null);
            }

            public Livre getLivreWithTitre(String titre){
             //Récupère dans un Cursor les valeurs correspondant à un livre contenu dans la BDD (ici on sélectionne le livre grâce à son titre)
             Cursor c = bdd.query(TABLE_LIVRES, new String[] {COL_ID, COL_ISBN, COL_TITRE},
            COL_TITRE + " LIKE \"" + titre +"\"", null, null, null, null);
             return cursorToLivre(c);
            }

            //Cette méthode permet de convertir un cursor en un livre
            private Livre cursorToLivre(Cursor c){
             //si aucun élément n'a été retourné dans la requête, on renvoie null
             if (c.getCount() == 0)
              return null;



                                                           - 5 -
          Les sources présentées sur cette pages sont libres de droits, et vous pouvez les utiliser à votre convenance. Par contre la page de présentation
          de ces sources constitue une oeuvre intellectuelle protégée par les droits d'auteurs. Copyright © 2010 - Tuto Mobile. Aucune reproduction, même
          partielle, ne peut être faite de ce site et de l'ensemble de son contenu : textes, documents, images, etc sans l'autorisation expresse de l'auteur.
          Sinon vous encourez selon la loi jusqu'à 3 ans de prison et jusqu'à 300 000 E de dommages et intérêts.
                                      http://a-renouard.developpez.com/tutoriels/android/comment-utiliser-sqlite/
   1   2   3   4   5   6   7   8   9