Datenbank Abfrage fragwürdig
Verfasst: Mittwoch 30. Juni 2021, 21:54
Hallo,
ich bekomme bei einer Abfrage (für mich) fragwürdige Datenbank Werte zurück. Vielleicht kann mir jemand weiterhelfen.
Ich nutze eine MYSQL Datenbank.
die ich wie folgend in initialisiere:
Ich möchte aus der Datenbank den Usernamen mit meinem Input vergleichen um eine Anmeldung zu gestalten:
der Ausdruck
liefert mir folgende Ausgabe
[('Sepp',), ('Karin',), ('Martin',)]
Jetzt meine Frage: warum sind in den Tupels in der Liste nicht einfach die "nackten Strings" enthalten.
Sondern da ist nochmal ein Komma mit enthalten. So dass ich auch auf den eigentlichen Namen mit zugreifen muss.
Ist das normal oder stimmt irgendetwas am code nicht ?
Zur Datenbank fällt mir auch nicht viel ein:
username VARCHAR(25)
vielen Dank schonmal
ich bekomme bei einer Abfrage (für mich) fragwürdige Datenbank Werte zurück. Vielleicht kann mir jemand weiterhelfen.
Ich nutze eine MYSQL Datenbank.
die ich wie folgend in initialisiere:
Code: Alles auswählen
import mysql.connector
# initialize Database
db = mysql.connector.connect(
user='root',
password='^dfdfsfdf545äöp#äüdfv56erg^y##)Yk',
host='127.0.0.1',
database='test_db')
Code: Alles auswählen
def change_user():
display_main_title()
mycursor = db.cursor()
mycursor.execute("SELECT username FROM User")
myresult = mycursor.fetchall()
print(myresult)
user = input(" \n\n\n Gib für die Anmeldung deinen Benutzer Namen ein: ")
result = 0
for row in myresult:
if str(row[0]) == user:
result = 1
break
else:
result = 0
if result == 1:
display_main_title()
write_user(user)
read_user()
print(" --- Die Anmeldung war erfolgreich ---")
else:
print("Die Anmeldung war nicht erfolgreich")
write_user("kein Nutzer")
der Ausdruck
Code: Alles auswählen
print(myresult)
[('Sepp',), ('Karin',), ('Martin',)]
Jetzt meine Frage: warum sind in den Tupels in der Liste nicht einfach die "nackten Strings" enthalten.
Sondern da ist nochmal ein Komma mit enthalten. So dass ich auch auf den eigentlichen Namen mit
Code: Alles auswählen
str(row[0])
Ist das normal oder stimmt irgendetwas am code nicht ?
Zur Datenbank fällt mir auch nicht viel ein:
username VARCHAR(25)
vielen Dank schonmal