Heim >Datenbank >Oracle >Welche Tabellentypen gibt es in Oracle?

Welche Tabellentypen gibt es in Oracle?

WBOY
WBOYOriginal
2022-05-13 16:34:183570Durchsuche

Es gibt 9 Arten von Tabellen: 1. Index-organisierte Tabelle, eine Tabelle, die gemäß einer Indexstruktur gespeichert wird; 2. Index-Cluster-Tabelle, eine Tabelle, die mehrere Tabellen zusammen speichert; 3. Hash-Cluster-Tabelle, die Hashing verwendet; Gruppieren Sie Schlüssel-Hash-Daten in Datenbankblöcken. 4. Geordnete Hash-Cluster-Tabellen, Zeilen werden nach einem bestimmten Schlüsselwert gehasht und eine Reihe von Datensätzen, die sich auf den Schlüssel beziehen, werden in der Einfügungsreihenfolge gespeichert. 5. Verschachtelte Tabellen usw. warten.

Welche Tabellentypen gibt es in Oracle?

Die Betriebsumgebung dieses Tutorials: Windows 10-System, Oracle 11g-Version, Dell G3-Computer.

Welche Tabellentypen gibt es in Oracle

1) Heap-organisierte Tabelle

Dies ist eine Standarddatenbanktabelle. Die Daten werden in einem Heap verwaltet. Beim Hinzufügen von Daten wird der erste freie Speicherplatz im Segment verwendet, der die Daten aufnehmen kann. Nachdem Sie Daten aus der Tabelle gelöscht haben, erlauben Sie zukünftigen INSERTs und UPDATEs, diesen Speicherplatz wiederzuverwenden. Ein Heap ist eine Menge Speicherplatz, der auf zufällige Weise verwendet wird.

2) Indexorganisierte Tabelle

Die Tabelle wird in einer Indexstruktur gespeichert. Dies erzwingt eine gewisse physische Reihenfolge der Zeilen selbst. In einer Heap-organisierten Tabelle können Daten an einer beliebigen Stelle im IOT abgelegt werden. Die Daten müssen entsprechend dem Primärschlüssel geordnet gespeichert werden.

3) Index-Clustertabelle

Cluster bezieht sich auf eine Gruppe von einer oder mehreren Tabellen, die physisch im selben Datenbankblock gespeichert sind und denselben Clustering-Schlüssel haben. Alle Wertezeilen werden physisch nebeneinander gespeichert.

Erstens können mehrere Tabellen physisch zusammen gespeichert werden. Im Allgemeinen können Sie sich einen Datenbankblock so vorstellen, dass er Daten für eine Tabelle speichert. Bei gruppierten Tabellen können jedoch Daten aus mehreren Tabellen im selben Block gespeichert werden.

Zweitens werden alle Daten, die denselben Clustering-Schlüsselwert enthalten (z. B. DEPTNO=10), physisch zusammen gespeichert. Die Daten werden durch den Clustering-Schlüsselwert „geclustert“. Clustering-Schlüssel werden mithilfe von B*-Baumindizes erstellt.

4) Hash-Clustertabelle (Hash-Clusteredtable)

ähnelt einer Index-Clustertabelle, verwendet jedoch nicht den B*-Baum-Index-Clustering-Schlüssel zum Auffinden der Daten, sondern hasht die Daten über den Hash-Clustering-Schlüssel zu Datenbankblock. Beim Hash-Clustering sind die Daten der Index (bildlich gesprochen). Hash-Cluster-Tabellen eignen sich, wenn Daten häufig durch Schlüsselgleichheitsvergleiche gelesen werden müssen.

5) Sortierte Hash-Cluster-Tabelle (sortierte Hash-Cluster-Tabelle)

Neu in Oracle10g, es weist die Eigenschaften einer Hash-Cluster-Tabelle und auch einige Eigenschaften von IOT auf.

Zeilen werden durch einen Schlüssel (z. B. CUSTOMER_ID) gehasht und eine Reihe von Datensätzen, die sich auf diesen Schlüssel beziehen, werden in der Einfügereihenfolge gespeichert. (Daher kann es sich bei diesen Datensätzen um zeitstempelbasierte Datensätze handeln).

Beispielsweise werden in einem Auftragseingabesystem Bestellungen nach dem First-In-First-Out-Prinzip (FIFO) eingeholt und bearbeitet. In einem solchen System ist geordnetes Hash-Clustering die geeignete Datenstruktur.

6) Verschachtelte Tabelle

Die verschachtelte Tabelle ist Teil der objektbezogenen Erweiterung von Oracle. Es handelt sich tatsächlich um untergeordnete Tabellen in einer übergeordneten/untergeordneten Beziehung, die vom System generiert und verwaltet wird.

7) Temporäre Tabelle (temporäre Tabelle)

Die temporäre Tabelle weist nach Bedarf temporäre Segmente aus dem temporären Tabellenbereich des aktuellen Benutzers zu. Jede Sitzung sieht nur die von dieser Sitzung zugewiesenen Bereiche; niemals werden Daten angezeigt, die in einer anderen Sitzung erstellt wurden.

8) Objekttabelle (objecttable)

Die Objekttabelle wird basierend auf einem bestimmten Objekttyp erstellt. Sie verfügen über spezielle Eigenschaften, die Nicht-Objekttabellen nicht haben. Beispielsweise generiert das System für jede Zeile der Objekttabelle eine REF (Objektkennung).

Objekttabellen sind eigentlich Sonderfälle von Heap-organisierten Tabellen, indexorganisierten Tabellen und temporären Tabellen und können als Teil ihrer Struktur auch verschachtelte Tabellen enthalten.

9) Externe Tabelle (externaltable)

Diese Tabellen werden nicht in der Datenbank selbst gespeichert, sondern außerhalb der Datenbank abgelegt, also in normalen Betriebssystemdateien.

Mit einer externen Tabelle können Sie eine Datei außerhalb der Datenbank abfragen, als ob die Datei auch eine gewöhnliche Tabelle in der Datenbank wäre. Externe Tabellen sind am nützlichsten zum Laden von Daten in die Datenbank (externe Tabellen sind sehr leistungsstarke Tools zum Laden von Daten).

Oracle10g geht noch einen Schritt weiter und führt außerdem eine externe Tabellen-Offload-Funktion ein, die eine einfache Möglichkeit bietet, Daten zwischen Oracle-Datenbanken zu verschieben, ohne Datenbankverknüpfungen zu verwenden.

Empfohlenes Tutorial: „Oracle Video Tutorial

Das obige ist der detaillierte Inhalt vonWelche Tabellentypen gibt es 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
Vorheriger Artikel:So ändern Sie Oracle-ProzesseNächster Artikel:So ändern Sie Oracle-Prozesse