Seite 1 von 1
sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 07:20
von onkelhamu
Hallo,
wenn ich testweise eine Datei erstelle
Code: Alles auswählen
...
cursor.execute("""CREATE TABLE touren(id INTEGER PRIMARY KEY)""")
...
weiss einer wieso das funktioniert
Code: Alles auswählen
cursor.execute("""INSERT INTO touren VALUES (NULL)""")
- ergibt bei jedem Aufruf neue id
das aber nicht?
Code: Alles auswählen
sql = "INSERT INTO touren VALUES (?)"
werte = (NULL)
cursor.execute(sql, werte)
NameError: name 'NULL' is not defined
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 07:35
von Sirius3
@onkelhamu: Im einen Fall ist NULL ein SQL-Keyword, in Python ist NULL aber eine Variable, die nicht definiert ist, dort wird None automatisch nach NULL konvertiert.
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 07:43
von onkelhamu
das heisst?
so gehts aber auch nicht
Code: Alles auswählen
sql = "INSERT INTO touren VALUES (?)"
werte = (None)
cursor.execute(sql, werte)
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 07:46
von Sirius3
Weil der zweite Parameter von execute eine Liste sein muß.
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 08:21
von onkelhamu
Guten Morgen,
also nur ein Parameter geht nicht?
Hab ich glaub ich aber auch ausprobiert( zweiter Wert Test INTEGER )
Und in der ersten Version gehts doch?
???
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 08:28
von Sirius3
Du kannst natürlich auch eine Liste mit nur einem Element benutzen. Warum nicht?
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 08:28
von onkelhamu
Ahhh
mit None und einer Liste gehts.
Bin ich doof!
Jetzt hab ich noch jede Menge datetime Objekte. Weiss jemand auch wie ich die da reinkriege?
Das wär klasse, vielen Dank
Re: sqlite fortlaufende id?
Verfasst: Sonntag 29. April 2018, 09:13
von onkelhamu
Super habs gefunden!
Vielen Dank