Hallo, war leider unterwegs und kann erst jetzt in die weitergeführte Diskussion einsteigen. Wenn gewünscht, würde ich das Prog. einstellen, damit es von Euch ggf. nachvollzogen werden kann. Es ist ja nur ein kleines Übungsprogramm für mich.
Habe eine völlig neue Tabelle Kontakte mit den gleichen Spalten erstellt und mit einem Datensatz gefüllt. Dann
qMain.SQL.Text:='select last_insert_rowid() FROM KONTAKTE';
eingefügt und neben dem ersten Datensatz nach Aufruf des Prog. einen neuen DS eingefügt. Es kommt erneut die bekannte
Exception, dass er die ID nicht finden kann.
Einsetzen von
SELECT CAST(last_insert_rowid() AS INTEGER) AS ID
gleiche
Exception.
Den Hinweis von jobo
Zitat:
Die Funktion in der Form "select last_insert_rowid() from <tabelle>" ergibt für mich keinen Sinn, weil sie unabhängig von der Tabelle arbeitet und etwas/einen Wert zurückliefert, den es nicht pro Zeile gibt. ( Schön das sie mit zeos so funktioniert. )
verstehe ich nicht, denn ich bin immer davon ausgegangen, dass die Funktion mit der jeweiligen Tabelle korespondiert. Ist wohl doch nicht so und was bewirkt die Funktion denn dann ohne Beachtung der Tabelle im Programm? Entschuldigt bitte meine naive Frage, doch ich bin da noch nicht dahinter gestiegen. Es ist doch eine einige Tabelle und kein multiuser-Programm, in das von verschiedenen Usern Eingaben vorgenommen werden - sehe ich da was völlig falsch?
Wenn das Prog. gewünscht wird, stelle ich es ein.