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

PostgreSQL Discussion :

Probleme avec SELECT


Sujet :

PostgreSQL

  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 Probleme avec SELECT
    Bonjour tout le monde , dans une interface Tkinter je voudrais ajouter une fonction qui verifie le nom d'utilisateur et le mot de passe correspendant qui sont stocké dans une base de données PostgreSQL qui contient une table ayant 5 champs : 'Id' , 'Prenom' , 'Nom' , 'User' et 'PassWord' , j'ai commencé par la fonctionne qui fait le test .
    Il me reste la savoir comment recuperer de ma base de donnée une liste des couples comme : [('user1','pass1') , ('user2','pass2') , ... ] , voila ma fonction :

    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
    def checkpass(failures=[]) :
     
        """ Collect 1's for every failure and quit program in case of failure_max failures """
        print(firstnamevar.get(), lastnamevar.get())
     
        onnect()
        cur = conn.cursor()
        cur.execute("set client_encoding to 'UTF8'; SELECT * from firsttable")
     
        if (firstnamevar.get(), lastnamevar.get()) in passwords:
     
            print('Logged in')
            Interface1()
     
            return
        failures.append(1)
        if sum(failures) >= failure_max:
            fenetre.destroy()
            raise SystemExit('Unauthorized login attempt')
        else:
            lab1.config(text='Try again. Essai : %i/%i' % (sum(failures)+1, failure_max))
    Tout marche bien , je veux juste savoir la requete corespondante que je dois mettre au lieu de "set client_encoding to 'UTF8'; SELECT * from firsttable"

  2. #2
    Expert confirmé
    Homme Profil pro
    Inscrit en
    Mai 2002
    Messages
    3 173
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 41
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Mai 2002
    Messages : 3 173
    Points : 5 345
    Points
    5 345
    Par défaut
    Bonjour,


    C'est un simple select avec une clause where.

    Commençons par les bases : http://sqlpro.developpez.com/cours/sqlaz/select/

  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
    Bonjour tout le monde , salut Punkoff , merci bien pour vouloir me répondre , le code suivant marche bien : ça liste les couple : ('User','Pass') dans une liste b comme le montre le code suivant :

    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
    def checkpass(failures=[]) :
     
        """ Collect 1's for every failure and quit program in case of failure_max failures """
        #print(firstnamevar.get(), lastnamevar.get())
        global b
        connect()
        cur = conn.cursor()
        cur.execute("set client_encoding to 'UTF8'; SELECT * from firsttable")
        rows = cur.fetchall()
        if rows : 
            a = StringVar()       
            b = StringVar()
            b = []
            a = ''
            for z in rows:
                a = (z[3].strip(),z[4].strip())
                b.append(a)
            print b
     
        if (uservar.get(), passvar.get()) in b:
     
            print('Logged in')
            Interface1()
     
            return
        failures.append(1)
        if sum(failures) >= failure_max:
            fenetre.destroy()
            raise SystemExit('Unauthorized login attempt')
        else:
            lab1.config(text='Try again. Essai : %i/%i' % (sum(failures)+1, failure_max))

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

Discussions similaires

  1. probleme avec SELECT..FROM..WHERE
    Par VBBBA dans le forum Requêtes et SQL.
    Réponses: 8
    Dernier message: 08/09/2006, 15h58
  2. [EJB3][HIBERNATE] Probleme avec select max
    Par kristof_machin dans le forum Hibernate
    Réponses: 2
    Dernier message: 26/04/2006, 13h05
  3. [VB]probleme avec select case
    Par mickael99 dans le forum VB 6 et antérieur
    Réponses: 4
    Dernier message: 03/02/2006, 14h07
  4. Probleme avec select
    Par sorry60 dans le forum Réseau
    Réponses: 20
    Dernier message: 16/12/2005, 17h23
  5. Probleme avec Select Case
    Par GeffD dans le forum MS SQL Server
    Réponses: 7
    Dernier message: 07/03/2005, 15h28

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