IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Android Discussion :

Problème suite au tutoriel base de données SQLite


Sujet :

Android

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut Problème suite au tutoriel base de données SQLite
    Bonjour,

    J'ai suivi le tutoriel Android du site sur la création du BDD SQLite, j'ai ensuite essayé de crée ma propre BDD pour mon programme mais voilà qu'un problème se pose à moi,

    Pour commencer voilà ce que je souhaitais faire:

    Un programme avec 6 editText dont 2 devais contenir du texte et 4 des données numériques, puis lors d'une pression sur "Valider" c'est 6donées devaient s'enregistrer dans ma BD.

    Voilà ca c'est la théorie ! En effet j'ai créée tout ce qui est nécessaire pour faire ceci, et j'ai voulu faire un teste de la BDD en créant un TOAST avec les infos lorsque je clique sur "Valider", c'est la que tout bug !

    Voilà mes différents codes (je débute en développement java/android donc si mon code n'est pas propre à 100% je m'en excuse )


    Ma classe principale:
    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
    package com.NavigLio.android.v1;
     
    import android.app.Activity;
    import android.content.res.Configuration;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.EditText;
    import android.widget.ImageButton;
    import android.widget.TableRow;
    import android.widget.TextView;
    import android.widget.Toast;
     
    public class NavigLio extends Activity 
    {
    //Declaration 
    	//Variable graphique
    		ImageButton ComValider;
    		ImageButton ComAnuler;
    		ImageButton ComInfo;
    		EditText NomEtape;
    		EditText Frequence;
    		EditText AltitudeEtape;
    		EditText MsaEtape;
    		EditText RmEtape;
    		EditText Distance;
    		TextView Affichage;
    		TableRow row;
     
    //Variable Programe..
    		private String VarNom;
    		private String VarFreq;
    		private String VarAlti;
    		private String VarMsa;
    		private String VarRm;
    		private String VarDist;
     
    //Application started ..
    	@Override
    	public void onCreate(Bundle savedInstanceState)
    	{
    		super.onCreate(savedInstanceState);
    		setContentView(R.layout.main);
     
    //Definition des different objets .. 
    		ComValider = (ImageButton) findViewById(R.id.Valider);
    		ComInfo = (ImageButton) findViewById(R.id.Info);
    		ComAnuler = (ImageButton) findViewById(R.id.Annuler);
    		NomEtape = (EditText) findViewById(R.id.TextNomEtape);
    		Frequence = (EditText) findViewById(R.id.TextFrequence);
    		AltitudeEtape = (EditText) findViewById(R.id.TextAltitudeEtape);
    		MsaEtape = (EditText) findViewById(R.id.TextMsa);
    		RmEtape = (EditText) findViewById(R.id.TextRm);
    		Distance = (EditText) findViewById(R.id.TextDist);
    		row = (TableRow) findViewById(R.id.row);
     
     
    //Attribution d'un tiroir par objets ..
    	//Tiroir d'annulation
    		ComAnuler.setOnClickListener(new View.OnClickListener() 
    		{
    			public void onClick(View view) 
    				{
    					NomEtape.setText("");
    			        Frequence.setText("");
    			        AltitudeEtape.setText("");
    			        MsaEtape.setText("");
    			        RmEtape.setText("");
    			        Distance.setText("");
    				}
    		});
    		ComValider.setOnClickListener(new View.OnClickListener()
    		{
    			public void onClick(View view)
    			{
    				VarNom = NomEtape.getText().toString();
    		        VarFreq = Frequence.getText().toString();
    		        VarAlti = AltitudeEtape.getText().toString();
    		        VarMsa = MsaEtape.getText().toString();
    		        VarRm = RmEtape.getText().toString();
    		        VarDist = Distance.getText().toString();
    				CreateLog();
    			}
    		});
    	}
    	protected void CreateLog() {
    	  //Création d'une instance de ma classe LivresBDD
            LogBDD logBdd = new LogBDD(this);
     
          //Ici je fait un teste avec des Valeur deja defini ! 
            Log log = new Log("Texte 1", "Texte2", 10, 20, 30, 40);
     
          //On ouvre la base de données pour écrire dedans
            logBdd.open();
          //On insère le livre que l'on vient de créer
            logBdd.insertLivre(log);
     
          //Pour vérifier que l'on a bien créé notre livre dans la BDD
            //on extrait le livre de la BDD grâce au titre du livre que l'on a créé précédemment
            Log logFromBdd = logBdd.getLivreWithTitre(log.getNom());
            //Si un livre est retourné (donc si le livre à bien été ajouté à la BDD)
            if(logFromBdd != null){
            	//On affiche les infos du livre dans un Toast
            	Toast.makeText(this, logFromBdd.toString(), Toast.LENGTH_LONG).show();
            }
     
            logBdd.close();
    	}
    }
    La classe Log:
    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
    package com.NavigLio.android.v1;
     
    public class Log {
     
    	private int id;
    	private String nom;
    	private String frequence;
    	private int altitude;
    	private int msa;
    	private int rm;
    	private int dist;
     
    	public Log(){}
     
    	public Log(String nom, String frequence, int altitude, int msa, int rm, int dist){
    		this.nom = nom;
    		this.frequence = frequence;
    		this.altitude = altitude;
    		this.msa = msa;
    		this.rm = rm;
    		this.dist = dist;
    	}
     
    	public int getId() {
    		return id;
    	}
     
    	public void setId(int id) {
    		this.id = id;
    	}
     
    	public String getNom() {
    		return nom;
    	}
     
    	public void setNom(String nom) {
    		this.nom = nom;
    	}
     
    	public String getFrequence() {
    		return frequence;
    	}
     
    	public void setFrequence(String frequence) {
    		this.frequence = frequence;
    	}
     
    	public int getAltitude() {
    		return altitude;
    	}
     
    	public void setAltitude(int altitude) {
    		this.altitude = altitude;
    	}
     
    	public int getMsa() {
    		return msa;
    	}
     
    	public void setMsa(int msa) {
    		this.msa = msa;
    	}
     
    	public int getRm() {
    		return rm;
    	}
     
    	public void setRm(int rm) {
    		this.rm = rm;
    	}
     
    	public int getDist() {
    		return dist;
    	}
     
    	public void setDist(int dist) {
    		this.dist = dist;
    	}
     
    	public String toString(){
    		return "ID : "+id+"Nom : "+nom+"\nFréquence : "+frequence+"\nAltitude : "+altitude+" Msa : "+msa+"\nRm : "+rm+" Distance : "+dist;
    	}
    }
    La classe LogBDD:
    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
    package com.NavigLio.android.v1;
     
    public class Log {
     
    	private int id;
    	private String nom;
    	private String frequence;
    	private int altitude;
    	private int msa;
    	private int rm;
    	private int dist;
     
    	public Log(){}
     
    	public Log(String nom, String frequence, int altitude, int msa, int rm, int dist){
    		this.nom = nom;
    		this.frequence = frequence;
    		this.altitude = altitude;
    		this.msa = msa;
    		this.rm = rm;
    		this.dist = dist;
    	}
     
    	public int getId() {
    		return id;
    	}
     
    	public void setId(int id) {
    		this.id = id;
    	}
     
    	public String getNom() {
    		return nom;
    	}
     
    	public void setNom(String nom) {
    		this.nom = nom;
    	}
     
    	public String getFrequence() {
    		return frequence;
    	}
     
    	public void setFrequence(String frequence) {
    		this.frequence = frequence;
    	}
     
    	public int getAltitude() {
    		return altitude;
    	}
     
    	public void setAltitude(int altitude) {
    		this.altitude = altitude;
    	}
     
    	public int getMsa() {
    		return msa;
    	}
     
    	public void setMsa(int msa) {
    		this.msa = msa;
    	}
     
    	public int getRm() {
    		return rm;
    	}
     
    	public void setRm(int rm) {
    		this.rm = rm;
    	}
     
    	public int getDist() {
    		return dist;
    	}
     
    	public void setDist(int dist) {
    		this.dist = dist;
    	}
     
    	public String toString(){
    		return "ID : "+id+"Nom : "+nom+"\nFréquence : "+frequence+"\nAltitude : "+altitude+" Msa : "+msa+"\nRm : "+rm+" Distance : "+dist;
    	}
    }
    Et enfin la classe MaBaseSQLite:
    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
    package com.NavigLio.android.v1;
     
    import android.content.Context;
    import android.database.sqlite.SQLiteDatabase;
    import android.database.sqlite.SQLiteOpenHelper;
    import android.database.sqlite.SQLiteDatabase.CursorFactory;
     
    public class MaBaseSQLite extends SQLiteOpenHelper {
     
    	private static final String TABLE_LOG = "table_log";
    	private static final String COL_ID = "ID";
    	private static final String COL_NOM = "nom";
    	private static final String COL_FREQ = "frequence";
    	private static final String COL_ALTI = "altitude";
    	private static final String COL_MSA = "msa";
    	private static final String COL_RM = "rm";
    	private static final String COL_DIST = "dist";
     
    	private static final String CREATE_BDD = "CREATE TABLE " + TABLE_LOG + " ("
    	+ COL_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COL_NOM + " TEXT NOT NULL, "
    	+ COL_FREQ + " TEXT NOT NULL, " + COL_ALTI + " TEXT NOT NULL, " + COL_MSA + " TEXT NOT NULL "
    	+ COL_RM + " TEXT NOT NULL " + COL_DIST + "TEXT NOT NULL);";
     
    	public MaBaseSQLite(Context context, String name, CursorFactory factory, int version) {
    		super(context, name, factory, version);
    	}
     
    	@Override
    	public void onCreate(SQLiteDatabase db) {
    		//on crée la table à partir de la requête écrite dans la variable CREATE_BDD
    		db.execSQL(CREATE_BDD);
    	}
     
    	@Override
    	public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
    		//On peut faire ce qu'on veut ici moi j'ai décidé de supprimer la table et de la recréer
    		//comme ça lorsque je change la version les id repartent de 0
    		db.execSQL("DROP TABLE " + TABLE_LOG + ";");
    		onCreate(db);
    	}
     
    }
    Et je vois pas pourquoi cela ne marche pas ... puisque le tuto marche ...

    Merci d'avance pour votre aide !

    Flyer-74

  2. #2
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    Bonjour,

    La classe Log et LogBDD sont la même ici, peux tu renseigner les bonnes classes stp ?

    Merci

  3. #3
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut
    Oups !!

    Alors il y a deux fois la classe log voici la vrai classe LogBDD:

    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
    package com.NavigLio.android.v1;
     
    import android.content.ContentValues;
    import android.content.Context;
    import android.database.Cursor;
    import android.database.sqlite.SQLiteDatabase;
     
     
    public class LogBDD {
     
    	private static final int VERSION_BDD = 1;
    	private static final String NOM_BDD = "nav.db";
     
    	private static final String TABLE_LOG = "table_log";
    	private static final String COL_ID = "ID";
    	private static final int NUM_COL_ID = 0;
    	private static final String COL_NOM = "nom";
    	private static final int NUM_COL_NOM = 1;
    	private static final String COL_FREQ = "frequence";
    	private static final int NUM_COL_FREQ = 2;
    	private static final String COL_ALTI = "altitude";
    	private static final int NUM_COL_ALTI = 3;
    	private static final String COL_MSA = "msa";
    	private static final int NUM_COL_MSA = 4;
    	private static final String COL_RM = "rm";
    	private static final int NUM_COL_RM = 5;
    	private static final String COL_DIST = "dist";
    	private static final int NUM_COL_DIST = 6;
     
    	private SQLiteDatabase bdd;
     
    	private MaBaseSQLite maBaseSQLite;
     
    	public LogBDD(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(Log log){
    		//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_NOM, log.getNom());
    		values.put(COL_FREQ, log.getFrequence());
    		values.put(COL_ALTI, log.getAltitude());
    		values.put(COL_MSA, log.getMsa());
    		values.put(COL_RM, log.getRm());
    		values.put(COL_DIST, log.getDist());
    		//on insère l'objet dans la BDD via le ContentValues
    		return bdd.insert(TABLE_LOG, null, values);
    	}
     
    	public int updateLivre(int id, Log log){
    		//La mise à jour d'un log dans la BDD fonctionne plus ou moins comme une insertion
    		//il faut simplement préciser quel log on doit mettre à jour grâce à l'ID
    		ContentValues values = new ContentValues();
    		values.put(COL_NOM, log.getNom());
    		values.put(COL_FREQ, log.getFrequence());
    		values.put(COL_ALTI, log.getAltitude());
    		values.put(COL_MSA, log.getMsa());
    		values.put(COL_RM, log.getRm());
    		values.put(COL_DIST, log.getDist());
    		return bdd.update(TABLE_LOG, values, COL_ID + " = " +id, null);
    	}
     
    	public int removeLivreWithID(int id){
    		//Suppression d'un log de la BDD grâce à l'ID
    		return bdd.delete(TABLE_LOG, COL_ID + " = " +id, null);
    	}
     
    	public Log getLivreWithTitre(String nom){
    		//Récupère dans un Cursor les valeurs correspondant à un log
    contenu dans la BDD (ici on sélectionne le livre grâce à son titre)
    		Cursor c = bdd.query(TABLE_LOG, new String[] {COL_ID, COL_NOM, COL_FREQ, COL_ALTI, COL_MSA, COL_RM, COL_DIST}, COL_NOM + " LIKE \"" + nom +"\"", null, null, null, null);
    		return cursorToLog(c);
    	}
     
    	//Cette méthode permet de convertir un cursor en un livre
    	private Log cursorToLog(Cursor c){
    		//si aucun élément n'a été retourné dans la requête, on renvoie null
    		if (c.getCount() == 0)
    			return null;
     
    		//Sinon on se place sur le premier élément
    		c.moveToFirst();
    		//On créé un livre
    		Log log = new Log();
    		//on lui affecte toutes les infos grâce aux infos contenues dans le Cursor
    		log.setId(c.getInt(NUM_COL_ID));
    		log.setNom(c.getString(NUM_COL_NOM));
    		log.setFrequence(c.getString(NUM_COL_FREQ));
    		log.setAltitude(c.getInt(NUM_COL_ALTI));
    		log.setMsa(c.getInt(NUM_COL_MSA));
    		log.setRm(c.getInt(NUM_COL_RM));
    		log.setDist(c.getInt(NUM_COL_DIST));
    		//On ferme le cursor
    		c.close();
     
    		//On retourne le log
    		return log;
    	}
     
    }
    voilà ce coup ci c'est la bonne !

    Merci,

    flyer-74

  4. #4
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    A première vue, je ne vois pas ce qui déconne.
    As-tu essayer de tester la valeur de retour de la méthode insert pour voir si déjà c'était bien insérer dans ta base ?

  5. #5
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut
    Citation Envoyé par MrDuChnok Voir le message
    A première vue, je ne vois pas ce qui déconne.
    As-tu essayer de tester la valeur de retour de la méthode insert pour voir si déjà c'était bien insérer dans ta base ?
    Comment puis-je faire ?
    En php il y a une interface graphique dans laquelle on peut vérifier cela, y'aurait-il pareille ici ?

    merci

    flyer74

  6. #6
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    En testant avec le débugueur tu peux observer tout ce qu'il se passe dans ton programme.

    http://nbenbourahla.developpez.com/t...s-application/

  7. #7
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Citation Envoyé par flyer74 Voir le message
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
     
     
    	private static final String CREATE_BDD = "CREATE TABLE " + TABLE_LOG + " ("
    	+ COL_ID + " INTEGER PRIMARY KEY AUTOINCREMENT, " + COL_NOM + " TEXT NOT NULL, "
    	+ COL_FREQ + " TEXT NOT NULL, " + COL_ALTI + " TEXT NOT NULL, " + COL_MSA + " TEXT NOT NULL "
    	+ COL_RM + " TEXT NOT NULL " + COL_DIST + "TEXT NOT NULL);";
    Il te manque des virgules dans la création de ta BD c'est pour cela qui ne reconnaît pas 'dist'. Virgule manquantes après le COL_MSA et COL_RM.

    Remet à jour ta base de donnée.

  8. #8
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut
    Justement j'ai modifié cela et l'erreur qui en résulte et celle de mon poste précédant...

    A savoir:
    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
    01-02 10:02:00.579: E/AndroidRuntime(283): FATAL EXCEPTION: main
    01-02 10:02:00.579: E/AndroidRuntime(283): android.database.sqlite.SQLiteException: no such column: dist: , while compiling: SELECT ID, nom, frequence, altitude, msa, rm, dist FROM table_log WHERE nom LIKE "Teste"
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteCompiledSql.native_compile(Native Method)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteCompiledSql.compile(SQLiteCompiledSql.java:91)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteCompiledSql.<init>(SQLiteCompiledSql.java:64)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteProgram.<init>(SQLiteProgram.java:80)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteQuery.<init>(SQLiteQuery.java:46)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteDirectCursorDriver.query(SQLiteDirectCursorDriver.java:42)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteDatabase.rawQueryWithFactory(SQLiteDatabase.java:1345)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteDatabase.queryWithFactory(SQLiteDatabase.java:1229)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1184)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.database.sqlite.SQLiteDatabase.query(SQLiteDatabase.java:1264)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at com.NavigLio.android.v1.LogBDD.getLivreWithTitre(LogBDD.java:87)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at com.NavigLio.android.v1.NavigLio.CreateLog(NavigLio.java:101)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at com.NavigLio.android.v1.NavigLio$2.onClick(NavigLio.java:82)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.view.View.performClick(View.java:2408)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.view.View$PerformClick.run(View.java:8816)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.os.Handler.handleCallback(Handler.java:587)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.os.Handler.dispatchMessage(Handler.java:92)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.os.Looper.loop(Looper.java:123)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at android.app.ActivityThread.main(ActivityThread.java:4627)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at java.lang.reflect.Method.invokeNative(Native Method)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at java.lang.reflect.Method.invoke(Method.java:521)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:868)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at com.android.internal.os.ZygoteInit.main(ZygoteInit.java:626)
    01-02 10:02:00.579: E/AndroidRuntime(283): 	at dalvik.system.NativeStart.main(Native Method)
    Et là c'est le drame!

    merci

    flyer74

  9. #9
    Expert confirmé

    Avatar de Feanorin
    Profil pro
    Inscrit en
    Avril 2004
    Messages
    4 589
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Avril 2004
    Messages : 4 589
    Par défaut
    Bonjour,

    Tu n'as pas remis à jour ta BD .

    N'oublie pas que si tu ne changes pas de version ou si tu ne la supprime pas Android n'y touchera pas.

  10. #10
    Membre averti
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2011
    Messages
    30
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant
    Secteur : Enseignement

    Informations forums :
    Inscription : Décembre 2011
    Messages : 30
    Par défaut
    Salut, au risque de passé pour un "Zéro" comment fait on pour la mettre à jour, je ne vois pas trop comme cela marche, je pensais que java géré cela lors de la compilation, mais si ce n'est pas le cas ou est stoker ma base de donnée puisqu'il n'y a aucun autre endroit ou je la vois cette base ?

    Merci,

    Flyer74

  11. #11
    Rédacteur
    Avatar de MrDuChnok
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Juin 2002
    Messages
    2 112
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Produits et services télécom et Internet

    Informations forums :
    Inscription : Juin 2002
    Messages : 2 112
    Par défaut
    Si tu desinstalle complétement ton application de ton téléphone ou emulateur, il doit normalement supprimer la base (si tu veux tester pendant tes développements).
    Par contre si tu veux effectivement mettre à jour la base de données pendant une mise à jour de l'application, alors là il faut que tu change manuellement le numéro de version dans la classe ouvrant la connexion avec la base (normalement, tu précise le numéro de version de la base aux constructeurs si mes souvenirs sont bons )

Discussions similaires

  1. TQuery Delphi 7 - problème de base de données Sqlite
    Par omarovskis dans le forum Bases de données
    Réponses: 2
    Dernier message: 28/01/2013, 15h49
  2. [Flex4] Problème avec base de données SQLite (Flex Mobile)
    Par benlard dans le forum Flex
    Réponses: 1
    Dernier message: 12/06/2012, 17h30
  3. Réponses: 3
    Dernier message: 05/12/2010, 12h27
  4. Problème de lecture de base de données SQLite
    Par Knuckles dans le forum JDBC
    Réponses: 0
    Dernier message: 23/11/2009, 09h15
  5. Problème de sauvegarde de bases de données
    Par Gwipi dans le forum Administration
    Réponses: 2
    Dernier message: 09/09/2005, 08h30

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo