@tv-verrückter: Du könntest an der Namensgebung noch ein bisschen arbeiten. Namen sollten vermitteln wofür der Wert im Programm steht, der daran gebunden ist. Abkürzungen (?) wie `hol` oder einbuchstabige Namen wie `a` tun das in der Regel nicht. Und `row` ist irreführend, denn `fetchall()` liefert nicht nur eine Zeile, sondern potentiell viele.
Bei dem ``SELECT`` fehlt IMHO noch eine ``ORDER BY``-Klausel, denn sonst ist AFAIK keine Reihenfolge der Ergebnisse garantiert.
`a` ist im Grunde überflüssig, wie auch die Klammern auf der rechten Seite der Zuweisung in der letzten Zeile.
Code: Alles auswählen
cursor.execute('SELECT Id FROM sprache WHERE aktiv=1')
rows = cursor.fetchall()
language_id = rows[self.language_combo_box.currentIndex() - 1]
Wobei ich mal vermute das war nur ein Beispiel, denn wenn ich mit der Vermutung Qt richtig liege, müsste man eigentlich prüfen ob in der ComboBox *nichts* ausgewählt wurde und AFAIK fängt der Index dort auch bei 0 an, wenn etwas ausgewählt wurde.