Ich habe eine SQLite Tabelle mit folgendem Aufbau:
AlertType - Text
Active - Bool
Nun möchte ich den Spalteninhalt einer bestimmten Zeile auslesen mit
cur.execute("SELECT Active FROM ALERTconfig WHERE ALERTtype == 'Away'")
print(cur.fetchone())
return res
Als Printausgabe erhalte ich
(0,)
Was muss ich wie ändern, damit ich nur "0" oder "1" erhalte?
Reinen Zahlenwert aus SQLite Tabelle auslesen
Das Ergebnis ist ein Tuple, das Du einfach entpacken kannst:
Code: Alles auswählen
cur.execute("SELECT Active FROM ALERTconfig WHERE ALERTtype == ?", ['Away'])
active, = cur.fetchone()
Und da Du einen boolschen Wert abfragst, dürfte die Rückgabe eines Booleans sinnvoll sein:
Code: Alles auswählen
return bool(active)
- __blackjack__
- User
- Beiträge: 13112
- Registriert: Samstag 2. Juni 2018, 10:21
- Wohnort: 127.0.0.1
- Kontaktdaten:
Statt ``ALERTtype == 'Away'`` sollte das wohl ``ALERTtype = 'Away'`` heissen.
Man sieht hier auch ganz schön das SQL bei Bezeichnern nicht auf Gross-/Kleinschreibung achtet. Allerdings gibt's Datenbanken die das dann doch tun, deshalb würde ich Bezeichner grundsätzlich klein schreiben. Und Unterstriche verwenden um Worte zu trennen.
Man sieht hier auch ganz schön das SQL bei Bezeichnern nicht auf Gross-/Kleinschreibung achtet. Allerdings gibt's Datenbanken die das dann doch tun, deshalb würde ich Bezeichner grundsätzlich klein schreiben. Und Unterstriche verwenden um Worte zu trennen.
„All religions are the same: religion is basically guilt, with different holidays.” — Cathy Ladman