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

Python Discussion :

Extraction données depuis Mysql


Sujet :

Python

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Novembre 2009
    Messages
    12
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Novembre 2009
    Messages : 12
    Par défaut Extraction données depuis Mysql
    Bonjour à tous,

    Je suis en train de faire un petit programme permettant d'aller chercher des infos via un formulaire (TKINTER) dans une base Mysql.
    La saisi d'un numéro permet d'afficher les coordonnées des contacts dans la fenêtre qui sont contenues dans Mysql.
    Pour l'instant, tout fonctionne correctement, du coup, j'aimerai le perfectionner un peu en faisant une requête cette fois sur le "nom" du contact, mais faire une recherche sur une partie du nom et afficher les réponses possibles.

    Ex:
    Contact: "Dupont"
    Je tape "Dupon"

    Et je récupère les réponses possible de tous les Dupont, Dupond, DuponS etc...

    Existe-t-il quelque chose en Python permettant ceci ? J'ai fait des recherches au niveau des chaines de caractère, mais sans résultat.
    La requête actuelle:

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    cursor.execute("SELECT *  FROM Feuil1 where RAISOC='"+ entry_name_search.get() + "'")
    rows = cursor.fetchall()
    Merci d'avance pour le coup de main

  2. #2
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Bonjour,

    Peut-être en utilisant dans la requête %STARTSWITH ...

  3. #3
    Expert éminent
    Homme Profil pro
    Architecte technique retraité
    Inscrit en
    Juin 2008
    Messages
    21 715
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Manche (Basse Normandie)

    Informations professionnelles :
    Activité : Architecte technique retraité
    Secteur : Industrie

    Informations forums :
    Inscription : Juin 2008
    Messages : 21 715
    Par défaut
    Salut,

    Pas sur que MySQL supporte %STARTSWITH, par contre, LIKE devrait marcher... mais il y a des forums ad hoc pour poser des questions autres que sur le langage Python.

    - W
    Architectures post-modernes.
    Python sur DVP c'est aussi des FAQs, des cours et tutoriels

  4. #4
    Membre prolifique
    Avatar de Sve@r
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Février 2006
    Messages
    12 827
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Oise (Picardie)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Aéronautique - Marine - Espace - Armement

    Informations forums :
    Inscription : Février 2006
    Messages : 12 827
    Billets dans le blog
    1
    Par défaut
    Bonjour
    Citation Envoyé par trilo Voir le message
    Existe-t-il quelque chose en Python permettant ceci ? J'ai fait des recherches au niveau des chaines de caractère, mais sans résultat.
    Si tu veux faire le truc en Python alors il ne faut pas mettre de blocage à ta requête SQL. Si ta requête est select * from Feuil1 where RAISOC='Dupont' alors exit les "Dupond" puisque SQL les éliminera avant que Python puisse les voir.
    Donc il faut faire une requête globale select * from Feuil1 puis traiter chaque ligne renvoyée et là Python pourra faire le travail.

    Ou alors tu laisses faire SQL qui justement sait le faire => select * from Feuil1 where RAISOC like '%Dupon%'. Parce que Python c'est pas superman. Il n'est pas fait pour remplacer tout le reste surtout quand tout le reste est déjà implanté. Python c'est juste le bout du chemin et plus tu fais faire par ceux qui savent faire plus ton programme Python carbure.

    Et comme le dit wiztricks, la syntaxe SQL c'est pas du Python.
    Mon Tutoriel sur la programmation «Python»
    Mon Tutoriel sur la programmation «Shell»
    Sinon il y en a pleins d'autres. N'oubliez pas non plus les différentes faq disponibles sur ce site
    Et on poste ses codes entre balises [code] et [/code]

  5. #5
    Expert confirmé
    Avatar de fred1599
    Homme Profil pro
    Lead Dev Python
    Inscrit en
    Juillet 2006
    Messages
    4 060
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Lead Dev Python
    Secteur : Arts - Culture

    Informations forums :
    Inscription : Juillet 2006
    Messages : 4 060
    Par défaut
    Et comme le dit wiztricks, la syntaxe SQL c'est pas du Python.
    Pourtant j'ai mis le lien qui va bien

    C'est du SQL, donc à mon sens MySQL pourrait/devrait le tolérer, mais pour ne pas avoir testé, je ne peux l'affirmer...

    Après pas sûr que %LIKE ne prenne pas en compte "dupont" alors qu'on cherche "pont..."
    Peut-être en y ajoutant un argument supplémentaire comme LIKE 'pont%' (note le % en fin de chaîne)

    Toute façon suffisamment de propositions ont été faîtes pour permettre des tests et vérifier si ça fait le café.

    EDIT: Du coup pour LIKE j'ai eu la confirmation en allant chercher dans la doc Django et on peut déjà confirmer que l'opérateur LIKE 'word%' fait bien l'équivalent.

Discussions similaires

  1. Extraction donnée depuis deux colonnes sans doublon
    Par foulyooo dans le forum Excel
    Réponses: 3
    Dernier message: 29/04/2016, 17h01
  2. Réponses: 1
    Dernier message: 03/02/2010, 13h38
  3. Extraction données depuis fax
    Par fredeau dans le forum EDI/Outils
    Réponses: 0
    Dernier message: 09/09/2008, 14h07
  4. [FLASH 8] Récupération données depuis MySQL
    Par coulb dans le forum Flash
    Réponses: 3
    Dernier message: 31/03/2007, 00h56
  5. Extraction de données depuis fichier .NDX ...
    Par Olif_C dans le forum WinDev
    Réponses: 4
    Dernier message: 30/08/2005, 11h57

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