SQLite RowID/Autoinc und RefreshSQL

Für Themen zu Datenbanken und Zugriff auf diese. Auch für Datenbankkomponenten.
Antworten
Socke
Lazarusforum e. V.
Beiträge: 3158
Registriert: Di 22. Jul 2008, 19:27
OS, Lazarus, FPC: Lazarus: SVN; FPC: svn; Win 10/Linux/Raspbian/openSUSE
CPU-Target: 32bit x86 armhf
Wohnort: Köln
Kontaktdaten:

SQLite RowID/Autoinc und RefreshSQL

Beitrag von Socke »

Hallo zusammen,

ich verwende TSQLite3Connection um eine SQLite-Datenbank abzufragen. Die Tabelle enthält ein Attribut "ID" als Alias für RowID (daher Primärschlüssel).
Das SELECT-Statement ist leider zu komplex um daraus automatisch die anderene SQL-Statements zu ermitteln (JOIN über zwei Tabellen).
Daher kann nach einem INSERT die RowID nicht automatisch bestimmt werden. Wie kann ich das manuell z.B. mit [urlhttp://www.freepascal.org/docs-html/fcl/sqldb/tsqlquery.refreshsql.html]RefreshSQL[/url] erreichen?

Viele Grüße
MfG Socke
Ein Gedicht braucht keinen Reim//Ich pack’ hier trotzdem einen rein

coasting
Beiträge: 21
Registriert: Mi 30. Apr 2014, 14:32

Re: SQLite RowID/Autoinc und RefreshSQL

Beitrag von coasting »

Hi...

Bin mir nicht ganz sicher, aber evtl. hilft dir https://www.sqlite.org/c3ref/last_insert_rowid.html weiter. Du kannst die ROWID aber auch aus der Tabelle rauslassen -> CREATE TABLE....WITHOUT ROWID; https://www.sqlite.org/withoutrowid.html ...und setzt den Primary Key auf ein anderes nicht AUTOINC Feld.

coasting

Antworten