hawkmaster: SQLite Autoincrement

Beitrag lesen

Hallo zusammen,

laut SQLite Doku bekommt eine Spalte einen Autoincrement wenn sie als "INTEGER PRIMARY KEY" definiert wurde.
Wenn ich es richtig verstanden habe, kann man aber auch noch den Key AUTOINCREMENT angeben. Dann würde man eine "dauerhafte" eindeutige ID über die gesamte Lebenszeit der Tabelle bekommen. Mit "Autoincrement" wird die letzte und höchste ID in der internen Tabelle "sqlite_sequence" gespeichert.
Ich hoffe das stimmt so?

In der Doku steht auch das mit AUTOINCREMENT die Inserts etwas langsamer wären.

Ich bin daher nicht sicher ob das wirklich notwendig ist und ob "INTEGER PRIMARY KEY" nicht ausreicht? Angenommen man hat 15 Zeilen in einer Tabelle mit Id 1-15 und man löscht die Zeile 12, dann ist beim nächsten Insert doch trotzdem die Id = 16.

Angenommen man hat ein Bestellsystem wo die ID die eindeutige Auftragsnummer sein soll. Wäre es hier richtig zusätzlich den Key AUTOINCREMENT zu nehmen?

vielen Dank und viele Grüße
hawk