Heim  >  Artikel  >  Datenbank  >  Was ist der Unterschied zwischen Rowid und Rownum in Oracle?

Was ist der Unterschied zwischen Rowid und Rownum in Oracle?

下次还敢
下次还敢Original
2024-05-08 18:06:19670Durchsuche

ROWID und ROWNUM werden in Oracle verwendet, um Zeilen in einer Tabelle zu identifizieren: ROWID: Eine eindeutige physische Kennung, die den Speicherort der Zeile auf der Festplatte identifiziert und sich auch dann nicht ändert, wenn die Zeile aktualisiert wird. ROWNUM: Pseudospalte, die die Zeilennummer der Zeile im Abfrageergebnissatz angibt, beginnend bei 1, sich mit der Reihenfolge der Zeilen ändert und zurückgesetzt wird, wenn die Zeile hinzugefügt oder gelöscht wird.

Was ist der Unterschied zwischen Rowid und Rownum in Oracle?

Die Unterschied zwischen Rowid und Rownum in Oracle

rowid und Rownum sind zwei verschiedene Schlüsselwörter der Oracle -Tabelle, die zur Identifizierung von Zeilen in der Tabelle verwendet werden:

  • Rowid: a einzigartig, intern, verwalteter Bezeichner, der jede Zeile einer Tabelle in der Datenbank identifiziert.
  • ROWNUM: Eine Pseudospalte, die die Zeilennummer der aktuellen Zeile in der Abfrage zurückgibt, nummeriert beginnend bei 1.

Detaillierte Erklärung

ROWID

  • ROWID ist eine physische Kennung, die die Position einer Zeile in einem Datenblock auf der Festplatte darstellt.
  • ROWID ist in der gesamten Datenbank eindeutig, auch für verschiedene Zeilen in derselben Tabelle.
  • ROWID ändert sich nicht, wenn Zeilen eingefügt, gelöscht oder aktualisiert werden, es sei denn, die Tabelle wird neu organisiert.

ROWNUM

  • ROWNUM ist ein logischer Bezeichner, der die relative Position einer Zeile im Abfrageergebnissatz darstellt.
  • ROWNUM ist innerhalb derselben Abfrageergebnismenge eindeutig, aber verschiedene Abfrageergebnismengen können unterschiedliche ROWNUM-Werte für dieselbe Zeile zurückgeben.
  • ROWNUM ändert sich mit der Reihenfolge der Zeilen im Abfrageergebnissatz und kann zurückgesetzt werden, wenn Zeilen hinzugefügt, gelöscht oder aktualisiert werden.

Verwendung

ROWID:

  • Für Vorgänge, bei denen Zeilen über verschiedene Sitzungen oder Transaktionen hinweg eindeutig identifiziert werden müssen.
  • Wenn Zeilen physisch aus der Datenbank abgerufen werden müssen.

ROWNUM:

  • Für Vorgänge, die basierend auf der Reihenfolge der Zeilen ausgeführt werden müssen.
  • Wenn der Abfrageergebnissatz sortiert oder paginiert werden muss.

Beispiel

<code>SELECT ROWID, ROWNUM FROM table_name;</code>

Ergebnisse:

ROWID ROWNUM
AAAA2JDABAAAL4Q4AAAEAAAQ 1
AAAA2JDABAAAL4Q5AAEAARQ 2
AAAA2JDABAAAL4Q6AAEAA6Q 3

Das obige ist der detaillierte Inhalt vonWas ist der Unterschied zwischen Rowid und Rownum in Oracle?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn