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 :

Sélection des donnees dans une base SQLITE


Sujet :

Android

  1. #1
    Membre régulier
    Homme Profil pro
    Etudiant du Genie Logiciel
    Inscrit en
    Juillet 2011
    Messages
    397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Etudiant du Genie Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 397
    Points : 73
    Points
    73
    Par défaut Sélection des donnees dans une base SQLITE
    salut a tous les développeurs Androïde de ce site. lorsque j'essaie de récupérer des données dans une Base de donnée SQLITE , J'ai cette erreur que je ne comprends :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    06-18 13:15:01.682: E/CursorWindow(2243): need to grow: mSize = 1048576, size = 81, freeSpace() = 14, numRows = 9239
    06-18 13:15:01.682: E/CursorWindow(2243): not growing since there are already 9239 row(s), max size 1048576
    06-18 13:15:01.682: E/CursorWindow(2243): The row failed, so back out the new row accounting from allocRowSlot 9238
    06-18 13:15:01.682: E/Cursor(2243): Failed allocating fieldDir at startPos 18604 row 9238
    SVP, aidez moi a comprendre

  2. #2
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    Bonjour,

    on pourrait voir ton code avec le CursorWindow ?
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

  3. #3
    Membre régulier
    Homme Profil pro
    Etudiant du Genie Logiciel
    Inscrit en
    Juillet 2011
    Messages
    397
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Etudiant du Genie Logiciel
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Juillet 2011
    Messages : 397
    Points : 73
    Points
    73
    Par défaut Cursor
    salut. mes méthodes
    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
     
    @Override
    	public List<Coordonnees> GetAll() {
    		// TODO Auto-generated method stub
    		// Récupération de la liste des coordonnees
            Cursor cursor = maBDD.query(CoordonneesOpenHelper.COORDONNEES_TABLE_NAME,
                    new String[] {
            		        CoordonneesOpenHelper.COLUMN_ID,
                            CoordonneesOpenHelper.COLUMN_LATITUDE,
                            CoordonneesOpenHelper.COLUMN_LONGITUDE,
                            CoordonneesOpenHelper.COLUMN_ALTITUDE,
                            CoordonneesOpenHelper.COLUMN_PRECISION,
                            CoordonneesOpenHelper.COLUMN_VITESSE,
                            CoordonneesOpenHelper.COLUMN_FOURNISSEUR,
                            CoordonneesOpenHelper.COLUMN_DIRECTION,
                            CoordonneesOpenHelper.COLUMN_DATE
                            }, null, null, null,null, null);
     
            return ConvertCursorToListObject(cursor);
    	}
    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
     
    public List<Coordonnees> ConvertCursorToListObject(Cursor c) {
    		// TODO Auto-generated method stub
    		 @SuppressWarnings({ "unchecked", "rawtypes" })
    		List<Coordonnees> liste = new ArrayList();
     
    		         // Si la liste est vide
    		        if (c.getCount() == 0){
    		            return null;
    		        }else{
    		 	        // Pour chaque item
    		 	        while (c.moveToNext()){
    		 	        	Coordonnees coord = ConvertCursorToObject(c);
     
    		 	            liste.add(coord);
    		 	        }
     
    		 	        // Fermeture du curseur
    		 	        c.close();
     
    		 	        return liste;
    		 	    }
    	}
    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
     
    Override
    	public Coordonnees ConvertCursorToObject(Cursor c) {
    		// TODO Auto-generated method stub
    		Coordonnees co = new Coordonnees(c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_LATITUDE), c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_LONGITUDE),
                                             c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_ALTITUDE), c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_PRECISION), 
                                             c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_VITESSE),   c.getString(CoordonneesOpenHelper.NUM_COLUMN_FOURNISSEUR),
                                             c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_DIRECTION), c.getString(CoordonneesOpenHelper.NUM_COLUMN_DATE));
     
     
    		co.setId(c.getInt(CoordonneesOpenHelper.NUM_COLUMN_ID));
    		co.setLatitude(c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_LATITUDE));
    		co.setLongitude(c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_LONGITUDE));
    		co.setAltitude(c.getDouble(CoordonneesOpenHelper.NUM_COLUMN_ALTITUDE));
    		co.setPrecision(c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_PRECISION));
    		co.setVitesse(c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_VITESSE));
    		co.setFournisseur(c.getString(CoordonneesOpenHelper.NUM_COLUMN_FOURNISSEUR));
    		co.setDirection(c.getFloat(CoordonneesOpenHelper.NUM_COLUMN_DIRECTION));
    		co.setDate(c.getString(CoordonneesOpenHelper.NUM_COLUMN_DATE));
     
               return co;
    	}
    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
     
     
    	public void SelectData(){
    		cr = new CoordonneesRepository<CRepository<Coordonnees>>(this);
    	PrintWriter fic = null ;
    		cr.Open();
     
             List<Coordonnees> coordonnees = cr.GetAll() ;
     
    		try{
    			FileWriter file = new FileWriter("Coordonnees");
    			fic = new PrintWriter(file);
    		 for(Coordonnees cd : coordonnees) { 
    			fic.print(cd.getLatitude());
    			fic.print(cd.getLongitude());
    			fic.print(cd.getAltitude());
    			fic.print(cd.getPrecision());
    			fic.print(cd.getVitesse());
    			fic.print(cd.getFournisseur());
    			fic.print(cd.getDirection());
    			fic.print(cd.getDate());
    			fic.println();
    			fic.println();
     
     
    		 } 
     
     
    		}catch(IOException e){
    			e.getCause();
    		}
    		finally {
    			   if (fic != null){
    			 fic.close();
    			 cr.Close() ;
    			}
     
     
     
    		}
    	}
    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
     
     public int onStartCommand(Intent intent, int flags, int startId)
    	 {
    		Toast.makeText(this, "Démarrage du service", Toast.LENGTH_SHORT).show();
    // TODO Auto-generated method stub
    				final Handler hand = new Handler();
    				stask = new TimerTask() {
    				public void run() {
    				hand.post(new Runnable() {
    				public void run() {
    					try{
    				     SelectData();
    					}catch(SQLiteException e){
    						e.getCause();
    						e.getLocalizedMessage();
    						e.getStackTrace();
    						e.toString();
    					}
     
    				}
    				});
    				}
    				};
    				time.schedule(stask, 5000, 5000);
     
    		 return super.onStartCommand(intent, flags, startId);
     
     
     
     
    	 }

  4. #4
    Expert éminent

    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
    Points : 9 149
    Points
    9 149
    Par défaut
    Salut,

    Juste pour essayer essaye de créer une requêtes moins gourmande en ressource pour voir si le problème ne vient pas de là.

    (limite le nombre de colonne ou de réponse attendu).
    Responsable Android de Developpez.com (Twitter et Facebook)
    Besoin d"un article/tutoriel/cours sur Android, consulter la page cours
    N'hésitez pas à consulter la FAQ Android et à poser vos questions sur les forums d'entraide mobile d'Android.

Discussions similaires

  1. supprimer des donnees dans une base de données via des checkbox dans un tableau
    Par nourchéne dans le forum PHP & Base de données
    Réponses: 11
    Dernier message: 03/04/2013, 18h01
  2. [MySQL] Modification des donnees dans une base de donnees
    Par beloufa26 dans le forum PHP & Base de données
    Réponses: 2
    Dernier message: 16/06/2011, 14h13
  3. Enregistrer des donnees dans une base access
    Par mmidox dans le forum VB.NET
    Réponses: 1
    Dernier message: 31/03/2010, 13h59
  4. gestion des images dans une base de données
    Par bkadje dans le forum Bases de données
    Réponses: 2
    Dernier message: 19/10/2006, 11h12
  5. [Débutant] Modifier des données dans une base
    Par Amallric dans le forum Débuter
    Réponses: 2
    Dernier message: 12/06/2006, 08h51

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