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

Tkinter Python Discussion :

Manipuler les données dans une base de données


Sujet :

Tkinter Python

  1. #1
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut Manipuler les données dans une base de données
    Bonjour tout le monde , je suis debutant avec Tkinter , je voudrais bien commencer en faisant un essai sur une base de donnée DB1 qui contient une table "firstdata" , où il ya 3 champs : Nom , Prénom et Phone . J'ai crée DB1 avec phpMyadmin , et je peux y acceder depuis un code Python . J'aimerai bien savoir si je pourrais utiliser Tkinter pour afficher des données , les modifier , insérer de nouvelles enregistrements , et les supprimer . Merci d'avance .

  2. #2
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Citation Envoyé par Ismatus1 Voir le message
    J'ai crée DB1 avec phpMyadmin , et je peux y acceder depuis un code Python .
    Bonjour, je pense que vous avez ici la réponse à la question. OUIIIIIIIIIIIIIIIIIII, c est possible.
    Citation Envoyé par Ismatus1 Voir le message
    J'aimerai bien savoir si je pourrais utiliser Tkinter pour afficher des données , les modifier , insérer de nouvelles enregistrements , et les supprimer.
    Je pense qu'il s agit ici, de faire intéragir votre gestionnaire de Base de Donnée/ vos fonctions editer/ajouter/supprimer... avec l interface de Tkinter et c est 100% faisable.

  3. #3
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut phpmyadmin
    Bonjour , merci afranck64 pour ta reponse , en fait , j'ai deja commencé , je suis au niveau d'inserer des données là , merci encore

  4. #4
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut Python / Mysql
    Bonjour tout le monde , je suis debutant en Python et Mysql , j'ai pu finalement créer une base de données sur phpmyadmin , et je peux la connecter depuis un programme en Python avec une interface Tkinter , je voudrais au debut manipuler mes données : ( une base "testbase" contenant une table "testtable" qui contient 3 champs "Phone" , "Prenom" , "Nom" ) , les manipulations sont : créer une table , afficher les données , modifier des données , supprimer les données et inserer des données .
    J'ai pu afficher sur un terminale mes données , et inserer des données "fixe" dans ma table , mais j'arrive pas a inserer les données depuit la fenetre d'entrée ( ce qu'on saisit sur l'interface graphique ) , voila le code de ma fonction inserer() :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    def insere() :
        firstnamevar=firstname_entry.get()
        lastnamevar=lastname_entry.get()
        Phonevar=Phone_entry.get()
        print '%s    %s   :  %s'%(firstnamevar, lastnamevar, Phonevar) 
        db = MySQLdb.connect(host='localhost', user='root', passwd='', db='testbase',charset = "utf8" , use_unicode=True)
        curs = db.cursor()   
        curs.execute("""
            INSERT INTO testtable ( Phone, Prenom, Nom)
            VALUES"""
              %(firstnamevar), lastnamevar), Phonevar) )
              )
        curs.close()
        db.commit()
    Si quelqu'un a une idée , alors c'est bienvenue , merci bien .

  5. #5
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut Python / Mysql
    Enfin , j'ai pu en sortir , c'etait un probleme de requete , voila la fonction qui fonctionne bien :

    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
    #!/usr/bin/env python
    from Tkinter import *
    import ttk
    import MySQLdb
     
    def insere() :
        firstnamevar=firstname_entry.get()
        lastnamevar=lastname_entry.get()
        Phonevar=Phone_entry.get()
        print '%s    %s   :  %s'%(firstnamevar, lastnamevar, Phonevar) 
        db = MySQLdb.connect(host='localhost', user='root', passwd='', db='testbase',charset = "utf8" , use_unicode=True)
        curs = db.cursor()    
        cur.execute("INSERT INTO testbase.testtable (Id, Phone, Prenom, Nom) VALUES (NULL, '%s', '%s', '%s');"%(firstnamevar, lastnamevar, Phonevar)) # correct
        curs.close()
        db.commit()
    Merci

  6. #6
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Je pense que tu devrais mettre sur pieds une classe, qui a sa création, gère tout ce qui a trait à la connexion, et sauvegarder cela comme attribut (connexion, ...). Ensuite, ta méthode "insérer", aura juste à se servir d'un curseur pour faire le boulot voulu (sans se connecter/déconnecter à chaque requête )

  7. #7
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut Python / Mysql
    Merci , mais ça me plait comme ça

  8. #8
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006
    Par défaut
    Merci , mais ça me plait comme ça


    Pensez au boutton lorsque le problème est réglé

  9. #9
    Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    88
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2011
    Messages : 88
    Points : 58
    Points
    58
    Par défaut Python / Mysql
    Bonjour afranck , merci pour ton conseil en fait , mais je mait-rise pas les classes , je suis debutants , je v clicker mnt sur Resolu , merci bien

  10. #10
    Membre éprouvé
    Avatar de afranck64
    Homme Profil pro
    Étudiant
    Inscrit en
    Janvier 2009
    Messages
    592
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 33
    Localisation : Cameroun

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2009
    Messages : 592
    Points : 1 006
    Points
    1 006

Discussions similaires

  1. Réponses: 1
    Dernier message: 20/03/2012, 09h37
  2. inserer les données d'une base de données dans une autres?
    Par enstein8 dans le forum MS SQL Server
    Réponses: 8
    Dernier message: 14/10/2011, 13h33
  3. Réponses: 9
    Dernier message: 18/06/2010, 11h26
  4. Réponses: 4
    Dernier message: 29/11/2004, 16h51
  5. les images dans une base de données
    Par houhou dans le forum Bases de données
    Réponses: 8
    Dernier message: 22/06/2004, 14h27

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