python
  • sql
  • sqlcommand
  • 2017-08-05 4 views 0 likes 
    0

    Ich versuche zu sehen, ob der Typ entweder ein Buchstabe "T" ist oder zwischen Nummer 1-6 für die spezifische Dateneingabe mit Name und Passwort gefunden.Wie speichert man Ergebnisse aus einer SQL-Abfrage und verwendet sie?

    sql = 'SELECT type FROM table name WHERE name = "{}" AND password = "{}"'.format(username, password) 
    

    und dann in psedocode brauche ich so etwas wie:

    if type =< 5: 
         int() 
    elif type = "T" 
         string() 
    

    ich Python 2.7

    +0

    @py_noob ich mysql verwende, und ich versuche, um zu sehen, ob der Typ kleiner oder gleich dem Wert 5. – Eli

    Antwort

    0

    Hier bin mit ist ein Full-Skript, das die mysql DB abfragen wird, und verwenden Sie Ihre oben genannten Logik, um die Werte zu drucken. Ich habe den Python-Code sowie den Beispiel-Datenbank-Code für diesen Testfall enthalten. Lass es mich wissen, wenn du irgendwelche Fragen hast.

    Python

    import pymysql 
    
    connection = pymysql.connect(user='username', passwd='password', 
               host='localhost', 
               database='database') 
    
    cursor = connection.cursor() 
    
    NAME = 'Person_A' 
    PASSWORD = 'Password_A' 
    query = ("SELECT * FROM My_TABLE WHERE NAME = '%(1)s' AND PASSWORD = '%(2)s';" % {"1" : NAME, "2" : PASSWORD}) 
    
    
    cursor.execute(query) 
    
    for item in cursor: 
    
        type = item[0] 
    
        if type.isdigit(): 
         if int(type) <6: 
          print('Type is a number less than 6') 
         else: 
          print('Type is a number but not less than 6') 
        else: 
         if type == 'T': 
          print('Type is a string == T') 
         else: 
          print('Type is a string but not the letter T') 
    

    MYSQL

    CREATE TABLE MY_TABLE (TYPE VARCHAR(255), NAME VARCHAR(255), PASSWORD VARCHAR(255)); 
    
    INSERT INTO MY_TABLE VALUES ('T','Person_A','Password_A'),('4','Person_A','Password_A'),('7','Person_B','Password_B'),('t','Person_C','Password_C'); 
    
    +0

    Nicht Ja, ich kann nicht type = 'T' aufrufen, weil es Teil einer SQL-Tabelle ist. Deshalb versuche ich, den Befehl sql auszuführen. – Eli

    +0

    @Eli aktualisiert, bitte verwenden Sie die oben genannten –

    Verwandte Themen