Insertion dans base SQLite
salut
j'ai une erreur à l'insertion d'un objet dans la base de données SQLite et je n'arrive pas à dégager la faute. merci de m'aider
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
| @Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
// afficher la liste
getListView().setOnCreateContextMenuListener(this);
((Button)findViewById(android.R.id.button1)).setOnClickListener(this);
formationBdd = new FormationBDD(this);
Formation formation = new Formation("coachinflife", "71586488", "adresse@gmail.com", "adresse", "Tunis", "Informatique");
formationBdd.open();
formationBdd.insertFormation(formation);
DataBind();
}
public void DataBind(){
Cursor c = formationBdd.recupererListeFormations();
startManagingCursor(c);
SimpleCursorAdapter adapter = new SimpleCursorAdapter(this,
R.layout.list_item,c,new String[]{"libellé","tel","email","adresse","ville","catégorie"},
new int[]{R.id.textLibellé,R.id.TextTel,R.id.TextEmail,R.id.TextAdresse,R.id.TextVille,R.id.TextCatégorie});
setListAdapter(adapter);
} |
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13
| public long insertFormation(Formation formation){
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_LIB, formation.getLibellé());
values.put(COL_TEL, formation.getTel());
values.put(COL_EMAIL, formation.getEmail());
values.put(COL_ADR, formation.getAdresse());
values.put(COL_VILLE, formation.getVille());
values.put(COL_CAT, formation.getCatégorie());
//on insère l'objet dans la BDD via le ContentValues
return bdd.insert(TABLE_FORMATION, null, values);
} |
Code:
1 2 3 4 5 6
| 12-17 21:03:50.775: E/SQLiteDatabase(32691): Error inserting libellé=coachinflife catégorie=Informatique ville=Tunis adresse=adresse email=adresse@gmail.com tel=71586488
12-17 21:03:50.775: E/SQLiteDatabase(32691): android.database.sqlite.SQLiteConstraintException: error code 19: constraint failed
12-17 21:03:50.775: E/SQLiteDatabase(32691): at android.database.sqlite.SQLiteStatement.executeInsert(SQLiteStatement.java:113)
12-17 21:03:50.775: E/SQLiteDatabase(32691): at android.database.sqlite.SQLiteDatabase.insertWithOnConflict(SQLiteDatabase.java:1838)
12-17 21:03:50.775: E/SQLiteDatabase(32691): at android.database.sqlite.SQLiteDatabase.insert(SQLiteDatabase.java:1711)
12-17 21:03:50.775: E/SQLiteDatabase(32691): at com.example.trainingcenter.FormationBDD.insertFormation(FormationBDD.java:70) |