Bonsoir,

J'ai récemment changé de PC et je suis passé à la dernière version d'android studio 3.5.

Je suis toujours dans le codage d'une appli avec base de données.
J'ai récupéré mon appli codée avec l'ancienne version Android-studio 1.5.

Mon problème est que je n'arrive pas à afficher ma BDD.
Cela fonctionnait pourtant avec l'ancien ide 1.5.

Merci pour votre aide.
Ci-dessous une partie de mon code établi avec java.

Affichage1.java
Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
package com.example.myapplicationbidon2;
 
import android.app.Activity;
import android.os.Bundle;
import android.widget.ListView;
import android.widget.SimpleCursorAdapter;
import android.database.Cursor;
//import android.widget.Toast;
//import android.widget.ArrayAdapter;
//import java.util.ArrayList;
 
public class Affichage1 extends Activity {
 
    public Affichage1() {
    }
 
    @Override
    public String toString() {
        return "Affichage1{}";
    }
 
    @Override
    protected void onCreate(Bundle savedInstanceState) {
 
        super.onCreate(savedInstanceState);
        setContentView(R.layout.affichage1);
 
        //Creation d'une instance de la classe GestionBDD(creer la Bdd)
        GestionBDD bddViandes = new GestionBDD(this);
 
        //On ouvre la base de donnees
        bddViandes.open();
 
        //Creation d'une ligne pour une viande
        Viandes decoupe = new Viandes("boeuf", "cote", "4", "BG");
 
        // insertion d'une viande
        bddViandes.insertViandes(decoupe);
 
        //recuperation du listview present dans mon IHM
        ListView lv = this.findViewById(R.id.Afficheliste);
 
        Cursor data = bddViandes.crerColonne(); // appel méthode pour créer l'alias _id
 
        SimpleCursorAdapter adapter =
                new SimpleCursorAdapter(this, android.R.layout.simple_list_item_1, data,
                        new  String[] {"TYPE"}, new int[] {android.R.id.text1});
 
        lv.setAdapter(adapter);
 
    }
 
}
GestionBDD.java

Code : Sélectionner tout - Visualiser dans une fenêtre à part
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
141
142
143
package com.example.myapplicationbidon2;
 
/**
 * 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 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.setEndroit(cursor.getString(NUM_COL_ENDROIT));
        viandes.setNombre(cursor.getString(NUM_COL_NOMBRE));
 
        //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()   //essai
    {
 
        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 rowid, ID as _id, TYPE, ETAT, NOMBRE, ENDROIT FROM table_viandes", null);
 
    }*/
    public Cursor crerColonne()
    {
 
        return bdd.rawQuery("SELECT ID as _id, TYPE FROM table_viandes", null);
    }
 
  /*  public Viandes getViandesWithTitre(String titre)
    {
        //Recupere dans un cursor les valeurs correspondant à une viandes contenu
        // dans la BDD (ici on selectionne la viande grace a son titre)
        Cursor c = 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  cursorToViandes(c);
 
    }*/
 
}
Merci pour tout

rapidego cordialement