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 :

Recherche multiple Base SQLITE


Sujet :

Android

  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut Recherche multiple Base SQLITE
    Bonjour ,

    J'aimerais savoir si il était possible de faire un formulaire de recherche qui aille chercher sur plusieurs base de données ?

    Pour être plus clair :
    - Si j'ai 26 base de données (toute les lettre de l'alphabet)
    Faire une recherche qui lis la première lettre et qui va ensuite allez chercher les données correspondante (ex : Dupont -> base de donnée : D.sqlite)

    Si vous pouviez me repondre ou m'aiguiller vers des tutoriels , des bouts de code , des explications ou toutes autres informations utiles.

    Cordialement ,
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

  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 : 40
    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
    Points : 4 240
    Points
    4 240
    Par défaut
    celà ne va surement pas t'aider, mais quand tu parles de "base de données différentes", tu veux pas plutôt dire des tables de données ?
    Si vous jugez mon post utile dans la résolution de votre problème, n'hésitez pas à utiliser le système de vote afin d'améliorer la qualité du forum

  3. #3
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut
    Non je parle bien de Base de donnée (avec le même nom de table pour rendre l'action plus simple)

    Base de Donnée : A.sqlite avec une table : Alpha contenant les champs : Nom / prenom / adresse ...
    26 Base différentes !

    La limitation de 1.03Mo pour les BDD unique me bloquant dans ma mission je n'est d'autre choix que de la partitionné en plusieurs bdd.
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

  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
    Bonjour,

    La limitation de 1.03Mo pour les BDD unique me bloquant dans ma mission je n'est d'autre choix que de la partitionné en plusieurs bdd.
    Pourquoi une limitation ?

    Si tu as un souci de mémoire pourquoi ne pas utiliser plutôt une base donnée distante.
    Si tu ne peux pas tu peux toujours passer par des fichiers Xml cela t'évitera d'avoir la multiplication de base de donnée.
    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.

  5. #5
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut
    La limitation ce trouve pour le transfert entre Assets et Data/data/packages...
    D'après les test et les erreurs , documentation sur le sujet ce trouve a 1.03Mo (environ j'arrondis j'ai pas le nombre en tête précis)

    Je ne peu pas passer par une base de donnée distante comme le projet serait exploiter en OFF.

    petite info : La base de donnée en elle même viens d'un txt , que je passe a la moulinette dans Access, pour en faire un CSV. ensuite j'importe dans SQLiteManager le CSV pour créer la base sqlite.

    Si tu as des idées... ou d'autre personnes qui passerais sur ce sujet je suis preneur de toutes informations.

    PS : si tu as un liens pour un tutoriel pour un formulaire simple, EditText+bouton (avec action de recherche en clique sur le bouton)

    Merci ,
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

  6. #6
    Membre actif
    Homme Profil pro
    Développeur Java
    Inscrit en
    Avril 2005
    Messages
    103
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Puy de Dôme (Auvergne)

    Informations professionnelles :
    Activité : Développeur Java

    Informations forums :
    Inscription : Avril 2005
    Messages : 103
    Points : 203
    Points
    203
    Par défaut
    Bonjour,

    Pourquoi ne pas proposer le téléchargement de la base au premier lancement de l'application, ça éviterait de devoir embarquer la/les bases et ainsi réduirait la taille de l'apk et de l'installation sur le mobile.

  7. #7
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut
    Merci de ta réponse Aerinder,

    Pourquoi ne pas proposer le téléchargement de la base au premier lancement de l'application
    Par la création d'un Web-Service ? Ou juste par l'ajout via une procédure plus simple, du style suivant ? (modification dans le code prendre plutôt sur l'url plutôt que sur le Dossier "/assets/" )
    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
    // download database
            downloadFile(http://www.superbase.com/mabasededonnée/, MABASEDEDONNEE.sqlite);
     
            // copy new database
            File downloadedFile = new File(Environment.getExternalStorageDirectory() + "/" + DB_NAME);
            FileInputStream inputStream = new FileInputStream(downloadedFile);
            OutputStream output = new FileOutputStream(DB_PATH + DB_NAME);
     
            byte[] buffer = new byte[1024];
            Integer length = inputStream.read(buffer);
            while (length > 0)
            {
                output.write(buffer, 0, length);
                length = inputStream.read(buffer);
            }
     
            output.flush();
            output.close();
            inputStream.close();
     
            // delete downloaded file
            downloadedFile.delete();
    Sachant que la base de donnée doit être en Local dans /data/data/package/databases/ au final. Elle ne doit en aucun cas pouvoir être exporter ou public.

    L’intérêt est que la base doit être physiquement au final sur le device.(Qui travail en OFFLine)
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

  8. #8
    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
    D'après les test et les erreurs , documentation sur le sujet ce trouve a 1.03Mo (environ j'arrondis j'ai pas le nombre en tête précis)
    Euh d'où tires tu ces informations ? Merci

    petite info : La base de donnée en elle même viens d'un txt , que je passe a la moulinette dans Access, pour en faire un CSV. ensuite j'importe dans SQLiteManager le CSV pour créer la base sqlite.
    Ok donc tu n'as qu'une seule base de donnée .

    Après je n'ai pas de tutoriel exactement sur ce que tu demandes mais cela s'y rapproche
    http://a-renouard.developpez.com/tut...ndroid/sqlite/

    De là il te suffira juste d'utiliser les requête SQl pour remplir ta BD à partir du fichier CSV .

    Pourquoi ne pas proposer le téléchargement de la base au premier lancement de l'application, ça éviterait de devoir embarquer la/les bases et ainsi réduirait la taille de l'apk et de l'installation sur le mobile.
    Pourquoi ne pas avoir la BD rempli lors de la création de l'APK si tu veux toujours rester en OFF, au lieu de s'amuser à la remplir au démarrage de l'application ?
    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.

  9. #9
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut
    Merci de ta réponse ,
    Euh d'où tires tu ces informations ? Merci
    Pour les sources : Mes test personnels (pour être précis : 1048576 ko donc : 1.04Mo)
    et ensuite :
    http://stackoverflow.com/questions/2...-assets-folder
    http://ponystyle.com/blog/2010/03/26...-android-apps/
    Et d'autre liens que je n'est pas/plus sous la mains.

    Je pense être tomber sur une astuce qui semble parfaitement fonctionné ^^ ! En passer ma bdd en un autre format (qui lui n'est pas compressé) du style : mabdd.mp3


    Ok donc tu n'as qu'une seule base de donnée .
    A l'origine j'ai un TXT global d'où je traite les informations. oui j'ai une seule BDD a l'origine du coup.

    Après je n'ai pas de tutoriel exactement sur ce que tu demandes mais cela s'y rapproche
    http://a-renouard.developpez.com/tut...ndroid/sqlite/
    Je déteste ce tuto que je trouve des moins éloquent et pratique/applicatif.(Ce n'est que mon avis propre)

    De là il te suffira juste d'utiliser les requête SQl pour remplir ta BD à partir du fichier CSV .
    Faire un parser CSV ?
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

  10. #10
    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
    Merci pour les sources

    Euh juste si tu peux faire un test au lieu de vouloir copier tout d'un bloc , essaye de copier par paquet de 1024 comme dans ce tutoriel :
    http://www.reigndesign.com/blog/usin...-applications/

    Par contre celui la te montre comment utiliser une BDD dans les assets en la copiant dans ton paquage

    Je pense être tomber sur une astuce qui semble parfaitement fonctionné ^^ ! En passer ma bdd en un autre format (qui lui n'est pas compressé) du style : mabdd.mp3
    , c'est pas beau .

    Faire un parser CSV ?
    Euh , "parser" n'aurait pas été le mot que j'aurais employé mais utilisé ligne par ligne.
    Si tu veux le faire à partir d'un fichier txt comme tu le sens.
    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.

  11. #11
    Membre confirmé
    Profil pro
    Inscrit en
    Août 2010
    Messages
    385
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2010
    Messages : 385
    Points : 492
    Points
    492
    Par défaut
    De rien ,

    Euh juste si tu peux faire un test au lieu de vouloir copier tout d'un bloc , essaye de copier par paquet de 1024
    ...
    Par contre celui la te montre comment utiliser une BDD dans les assets en la copiant dans ton paquage
    Je copie bien par bloque de 1024bits ce qui fait que l'astuce de mettre en un format qui n'est pas compressé marche !!! C'est bien dans le Dossier Assets que je faisais etc jusque que il y avais cette limitation de 1.04Mo du faite du format , que j'ai passer moi par une parade (mabdd.mp3).

    , c'est pas beau .
    Surement mais ... cela marche xD ! Bon il me reste plus que a faire un formulaire des plus simple ... EditText / Bouton de Recherche / progressBar ...

    Si tu as un tutoriel en stock (même si cela semble plus simple que autocomplexeText). Autre que fait par tutomobile ! Surtout le passage du contenu du EditText dans la requete a l'appui sur le bouton.

    Cordialement ,
    Je pense que je close se sujet au final qui aura éclairci sur un sujet qui n'était pas celui de base ...



    Euh , "parser" n'aurait pas été le mot que j'aurais employé mais utilisé ligne par ligne.
    Si tu veux le faire à partir d'un fichier txt comme tu le sens.[/QUOTE]
    Si ma réponse ou ma question vous semble pertinente un clique sur le pouce vert.
    La base des Expression Access à Connaitre : http://office.microsoft.com/fr-ca/ac...295.aspx?CTT=3
    Un livre de chevet parfait : "Développement Android": http://www.editions-eyrolles.com/Livre/9782212125870/

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Réponses: 2
    Dernier message: 16/07/2014, 19h17
  2. Recherche en base de registre
    Par Pomalaix dans le forum Langage
    Réponses: 7
    Dernier message: 01/08/2012, 10h58
  3. [Lazarus] Recherche dans base Sqlite
    Par ovni76 dans le forum Lazarus
    Réponses: 3
    Dernier message: 05/11/2009, 13h43
  4. recherche logiciel base de donnees
    Par cada01a dans le forum Décisions SGBD
    Réponses: 2
    Dernier message: 08/06/2005, 12h10
  5. Insertion multiple à base de sous requête SELECT
    Par drinkmilk dans le forum Langage SQL
    Réponses: 8
    Dernier message: 14/04/2005, 16h34

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