Was wäre das korrekte universelle SQL-Konstrukt, um die letzte Zeile einzufügen (oder den Primärschlüssel)? Die ID könnte automatisch von einer Sequenz generiert werden, aber ich möchte die Sequenz überhaupt nicht behandeln! Ich muss die ID erhalten, indem ich die Tabelle abfrage. Alternativ könnte INSERT irgendwie erweitert werden, um die ID zurückzugeben. Angenommen, ich füge immer eine einzelne Zeile ein. Die Lösung sollte mit den meisten RDBMS funktionieren!Universelles SQL-Konstrukt zum Abrufen der zuletzt eingefügten Zeile
Antwort
der beste Weg ist, auf der Sequenz abhängen wie:
select Max(ID) from tableName
aber Wenn Sie nicht damit umgehen wollen, können Sie neue Timestamp-Spalte zu Ihrer Tabelle hinzufügen und dann max wählen Sie aus dieser Spalte .
wie auf diese Weise
select Max(TimestampField) from tableName
einen Service zufrieden sein würde hinzufügen Timestamp ist keine Option für mich. Meine App darf die Tabellenstruktur nicht ändern. –
Die Sequenzlösung funktioniert für mich. Es ist wahrscheinlich erwähnenswert Max (ID) wird ein falsches Ergebnis liefern, wenn Ihre Sequenz rollt (Zyklen über). In meinem Fall ist das irrelevant. Vielen Dank. –
Sie müssen sicherstellen, dass Ihre Isolationsstufe so ist, dass Sie keine IDs sehen, die von anderen Transaktionen eingefügt wurden. Und max (TimeStampField) erfordert, dass Schreibvorgänge nicht zu oft kommen, so dass keine zwei Schreibvorgänge innerhalb der Auflösung dieses Feldes sind. –
- 1. Abrufen der zuletzt eingefügten ID mit Mysql
- 2. Oracle OCI bekomme ID der zuletzt eingefügten Zeile
- 3. Abrufen des Index einer eingefügten Zeile
- 4. Oracle erhalten zuletzt eingefügten Zeile ID mit OCCI und C++
- 5. Gibt die Identität der zuletzt eingefügten Zeile aus der gespeicherten Prozedur zurück
- 6. Zend Framework: Wie die ID der zuletzt eingefügten Zeile abgerufen werden?
- 7. Verhindern doppelte Werte in Mysql-Datenbank - wenn bestimmte Spalten ähnlich der zuletzt eingefügten Zeile sind
- 8. SQL Server - Wie lautet das Datum/die Uhrzeit der zuletzt eingefügten Zeile einer Tabelle?
- 9. Zuletzt verwendetes Verzeichnis abrufen
- 10. Der beste Weg, um PK Guid der eingefügten Zeile
- 11. Primärschlüssel aus der eingefügten Zeile jdbc?
- 12. MySQL & Java - Get-ID des zuletzt eingefügten Wert (JDBC)
- 13. NSMutableDictionary repliziert den zuletzt eingefügten Index in jedem eingefügten Index anstelle des neuen Index
- 14. Wie zuletzt eingefügten ID in einer anderen Tabelle
- 15. Geben Sie die ID des zuletzt eingefügten Werts zurück. SQL
- 16. Wie die zuletzt eingefügten ID in Magento Kundenadresse Modell bekommen
- 17. Warum Select-Anweisung immer die zuletzt eingefügten Werte zurückgeben?
- 18. Erhalten Primärschlüssel Spaltenwert des zuletzt eingefügten Datensatzes in Mysql
- 19. PHP Index des zuletzt eingefügten Elements in Array erhalten
- 20. Die zuletzt erstellte Elementauswahl abrufen
- 21. Zuletzt erstellten Verzeichnis-Stapelbefehl abrufen
- 22. Erhalte ID der eingefügten Zeile von Upsert (insertOrUpdate) Sequelize Node.js
- 23. Holen Sie die ID der eingefügten Zeile mit C#
- 24. Cronjob zum Erkennen der zuletzt geänderten Dateien
- 25. Autowert der zuletzt eingefügte Zeile - MS Access/VBA
- 26. Dapper + MSAccess: Wie bekomme ich die Kennung der eingefügten Zeile?
- 27. ändern Wert der eingefügten Zeile einer Spalte mit Trigger
- 28. Erhalten Sie die ID der letzten eingefügten Zeile ORACLE/PHP
- 29. Zum zuletzt aktiven Register in VIM wechseln
- 30. Tabellenzeilenindex der aktuellen Zeile abrufen
Es gibt keine universelle Lösung, außer einen Zeitstempel aus der Addition –
ich mit einer Lösung mit hsqldb, postgresql, SQL Server 2005, Oracle, MySQL und DB2 –