Vous êtes sur la page 1sur 7

Atelier 6 : SqlLite

Objectif :
L’objectif de cet atelier est de familiariser avec la base de données SqlLite. Notre projet suit
l’architecture MVC (Modèle, Vue, Contrôleur).
On va créer une base de données Test. db qui contient la table Formation.
La structure de la table est comme suit :
Formation (id, description, titre, duree).
- Class Commondb hérite de la class SQLiteOpenHelper , permet la création et la
gestion de la base de données :

package com.example.testt;
import android.content.Context;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class Commondb extends SQLiteOpenHelper {

private static String dbname="Test.db";


private static int version=1;
private static final String TABLE_FORMATION = "create table formation (id char
primary key,titre char,description char,duree char);";

public Commondb(Context context) {


super(context, dbname, null, version);
}

@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL(TABLE_FORMATION);
}

@Override
public void onUpgrade(SQLiteDatabase arg0, int arg1, int arg2) {
}
}
- Class Formation :

package com.example.testt;

public class Formation {

private String id;


private String titre;
private String description;
private String duree;

// id_Formation
public String getid()
{ return id;}

public void setid(String id)


{ this.id =id; }

// titre
public String gettitre()
{ return titre; }

public void settitre(String titre)


{ this.titre=titre; }

// description
public String getdescription()
{ return description;}

public void setdescription(String description)


{ this.description=description;}

// duree
public String getduree()
{ return duree;}

public void setduree(String duree)


{ this.duree=duree;}

}
- Class Contrôleur : c’est l’intermidére entre l’interface graphique et la source de
données.

package com.example.testt;

import java.util.ArrayList;
import java.util.List;

import com.example.testt.Commondb;

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;

public class controleur {

SQLiteDatabase db = null;
Commondb commonDB = null;

public controleur(Context context) {


commonDB =new Commondb(context);
}

/**
* Ouvrir un flux avec la base
*/
public void open() {
db = commonDB.getWritableDatabase();
}

/**
* fermer la "connexion" à la base SqLite
*/
public void close() {
db.close();
}
public boolean saveFormation(Formation f) {

ContentValues values = new ContentValues();


values.put("id", f.getid());
values.put("titre",f.gettitre());
values.put("description",f.getdescription());
values.put("duree",f.getduree());

long id = db.insert("Formation", null, values);


if (id > 0) {
return true;
} else {
return false;
}
}

public void deleteFormation(String id) {


String idf[] = { id };
db.delete("Formation", "id=?", idf);
}

public boolean updateFormation(Formation f) {

ContentValues values = new ContentValues();

String idf[] = { f.getid()};

values.put("id", f.getid());
values.put("titre", f.gettitre());
values.put("description", f.getdescription());
values.put("duree", f.getduree());

long id = db.update("Formation", values, "id=?", idf);

if (id > 0) {
return true;
} else {
return false;
}

}}
- Au niveau de la Class mainActivity on va tester tous les fonctions implémenté dans la
class Contrôleur : SaveFormation , UpdateFormation , DeleteFormation

SaveFormation
updateFormation

deleteFormation
ShowFormation

Vous aimerez peut-être aussi