Ich versuche eine Sammlung zu speichern (die die Reihenfolge ihrer Elemente erhält). Ich werde die Sammlung iterieren und das Element einzeln in die DB einfügen. Angenommen, ich möchte die Elemente einzeln abrufen. Kann ich die Elemente in der richtigen Reihenfolge abrufen?Kann Postgres und Oracle die Reihenfolge der Anzeigen beibehalten?
Antwort
Nein, Datenbanktabellen sind haufenorientiert. Also theoretisch in einem einzigen Schreibmodus, wenn alle Zeilen von gleicher Größe waren, dann könnte diese "könnte" arbeiten. Wenn Sie jedoch auf einer Seite etwas freien Platz lassen und später eine kürzere Zeile einfügen, wird diese Seite eingefügt.
Also bitte nicht vertrauenswürdig Reihenfolge in jeder Datenbank. Einschließlich MySQL.
Leider ist es nicht. Wenn Sie Zeilen in einer Reihenfolge abrufen möchten, sollten Sie eine Sequenz (wie ID-Spalte, Primärschlüssel) und eine Order-by-Klausel in Bezug auf diese ID-Spalte verwenden.
Oracle eingebaute Rowid Pseudo Spalte enthält Zeilennummer Informationen; aber du solltest dich nicht darauf verlassen. Die Tabelle kann die Zeilenbewegungseigenschaft aktivieren.
' rowid' tut ** nicht ** enthalten eine "Zeilennummer". Es ist die physische _Adresse_ der Zeile im Tablespace. –
Sie können überprüfen, https://docs.oracle.com/cd/B19306_01/server.102/b14200/pseudocolumns008.htm: Die Position der Zeile im Datenblock (erste Zeile ist 0) – Mennan
- 1. Wie wird die Reihenfolge der Anzeigen in HashMap beibehalten?
- 2. Kann Ruby uniq die Reihenfolge beibehalten?
- 3. Wird unique() die Reihenfolge beibehalten?
- 4. Reihenfolge in der Reihenfolge beibehalten (LINQ to XSD)
- 5. Oracle XE oder Postgres?
- 6. Datensätze in aufsteigender Reihenfolge in Oracle Forms anzeigen
- 7. Anzeigen und Löschen von Postgres-Caches/Puffern?
- 8. Tabelle Join Reihenfolge in Postgres
- 9. Wird die Reihenfolge in Arrays beibehalten, wenn die Überschneidung erfolgt?
- 10. Wie kann ich die Zeilenreihenfolge einer Eingabe zusammenführen und beibehalten?
- 11. JSDoc Reihenfolge der Kommentare in der Ausgabe beibehalten
- 12. Kann IEnumerable <TSource> Concat <TSource> die Reihenfolge der Elemente beibehalten?
- 13. Wie kann ich die Reihenfolge der Insertion eines verschachtelten Perl-Hashes beibehalten?
- 14. Hibernate OneToMany Liste Reihenfolge beibehalten aber umgekehrt?
- 15. Hilfe für Sortieren nach Reihenfolge und Reihenfolge anzeigen
- 16. ListView-Reihenfolge umkehren und ohne Scrollen anzeigen
- 17. Postgres 9.5+: UPSERT die Anzahl der aktualisierten und eingefügten Zeilen
- 18. Reihenfolge der SQL-WHERE IN() -Klausel mit geschachteltem SELECT beibehalten
- 19. Ist Tensorflow QueueBase.enqueue_many Reihenfolge über Threads beibehalten?
- 20. Targeting einer Java-App bei Oracle UND Postgres
- 21. Reihenfolge der Klassen in einem Paket in Testausführung beibehalten
- 22. Reihenfolge der Wörterbuchelemente beibehalten, wie in Swift deklariert?
- 23. CountDownLatch: Beibehalten der Threading-Reihenfolge auf countDown erreicht
- 24. Alle Ansichten der Oracle-Datenbank anzeigen
- 25. Oracle Datum/Reihenfolge nach Frage
- 26. Warum kann der Standardzeichenfolgenvergleich die transitive Konsistenz nicht beibehalten?
- 27. String Verkettung Operator in Oracle, Postgres und SQL Server
- 28. Suchen und Anzeigen von Ergebnissen nach Relevanz in Oracle
- 29. Geöffnete Transaktionen in Oracle anzeigen
- 30. Wie kann sichergestellt werden, dass die in TestNG.xml angegebene Reihenfolge beibehalten wird?
Zeilen in einer relationalen Datenbank sind ** nicht ** sortiert. Wenn Sie sie in einer definierten Reihenfolge abrufen wollen, benötigen Sie eine 'Order by' und damit eine Spalte, nach der Sie bestellen können (zB der Index aus der Collection, eine Autoinkrement-Spalte oder ein Timestamp). –