テーブルには 9 種類あります: 1. インデックス構成テーブル、インデックス構造に従って格納されるテーブル、2. インデックス クラスタ化テーブル、複数のテーブルをまとめて格納するテーブル、3. ハッシュ クラスタ化テーブル、ハッシュクラスタリング キーをハッシュすることによってデータをデータベース ブロックに格納する; 4. 順序付きハッシュ クラスタリング テーブル、行は特定のキー値に従ってハッシュされ、キーに関連する一連のレコードが挿入順に格納されます; 5. ネストされたテーブルなど。
このチュートリアルの動作環境: Windows 10 システム、Oracle 11g バージョン、Dell G3 コンピューター。
1) ヒープ構成テーブル (ヒープ構成テーブル)
これは標準的なデータベース テーブルです。データはヒープで管理されます。データを追加する場合、データを収容できるセグメント内で最初に見つかった空きスペースが使用されます。テーブルからデータを削除した後、今後の INSERT と UPDATE でこの領域を再利用できるようにします。ヒープは、ランダムな方法で使用される一連のスペースです。
2) インデックス構成テーブル
テーブルはインデックス構造に従って格納されます。これにより、行自体に物理的な順序が強制されます。ヒープ構成テーブルでは、データをどこにでも配置できますが、IOT では、データは主キーに従って順序よく格納される必要があります。
3) インデックス クラスタ化テーブル
クラスタとは、物理的に格納される 1 つ以上のテーブルのグループを指します。同じクラスタリング キー値を持つすべての行は、物理的に隣接して格納されます。同じデータベースブロック上で相互に接続します。
まず、複数のテーブルを物理的に一緒に保存できます。一般的に、1 つのデータベース ブロックは 1 つのテーブルのデータを保存すると考えることができますが、クラスター化テーブルの場合は、複数のテーブルのデータが同じブロックに保存される場合があります。
2 番目に、同じクラスタリング キー値 (DEPTNO=10 など) を含むすべてのデータが物理的に一緒に保存されます。データは、クラスタリング キー値によって一緒に「クラスタ化」されます。クラスタリング キーは、B* ツリー インデックスを使用して作成されます。
4) ハッシュ クラスター化テーブル
はインデックス クラスター化テーブルに似ていますが、データの検索に B* ツリー インデックス クラスタリング キーを使用しません。代わりに、データはクラスタリングキーをハッシュすることによってデータベースブロックにハッシュされます。ハッシュ クラスタリングでは、データが (比喩的に言えば) インデックスになります。ハッシュ クラスター化テーブルは、キーの等価性比較を通じてデータを頻繁に読み取る必要がある場合に適しています。
5) ソートされたハッシュ クラスタ化テーブル
Oracle10g で新たに追加された、ハッシュ クラスタ化テーブルの特徴を持ち、IOT のいくつかの特徴もあります。
行はキー値 (CUSTOMER_ID など) によってハッシュされ、そのキーに関連する一連のレコードが挿入順に保存されます。 (したがって、これらのレコードはタイムスタンプ ベースのレコードである可能性があります)。
たとえば、注文入力システムでは、注文は先入れ先出し (FIFO) ベースで取得および処理されます。このようなシステムでは、順序付けされたハッシュ クラスタリングが適切なデータ構造です。
6) ネストしたテーブル
ネストしたテーブルは、Oracle オブジェクト リレーショナル拡張機能の一部です。これらは実際には、システムによって生成および維持される親子関係の子テーブルです。
7) 一時テーブル (temporarytable)
一時テーブルは、必要に応じて現在のユーザーの一時テーブル領域から一時セクションを割り当てます。各セッションは、このセッションによって割り当てられたエクステントのみを参照し、他のセッションで作成されたデータを参照することはありません。
8) オブジェクト テーブル (objecttable)
オブジェクト テーブルは、特定のオブジェクト タイプに基づいて作成されます。これらには、非オブジェクト テーブルにはない特別なプロパティがあり、たとえば、システムはオブジェクト テーブルの各行に対して REF (オブジェクト識別子) を生成します。
オブジェクト表は、実際にはヒープ構成表、索引構成表および一時表の特殊なケースであり、構造の一部としてネストした表を含むこともできます。
9) 外部テーブル (externaltable)
これらのテーブルはデータベース自体には格納されませんが、データベースの外部、つまり通常のオペレーティング システムに配置されます。ファイル内にあります。
外部テーブルを使用すると、ファイルがデータベース内の通常のテーブルであるかのように、データベースの外部のファイルに対してクエリを実行できます。外部テーブルは、データベースにデータをロードする場合に最も役立ちます (外部テーブルは非常に強力なデータ ロード ツールです)。
Oracle10g ではさらに一歩進んで、外部テーブルのアンロード機能も導入されています。これにより、データベース リンクを使用せずに Oracle データベース間でデータを簡単に移動できます。
推奨チュートリアル: 「Oracle ビデオ チュートリアル 」
以上がOracle のテーブルの種類は何ですかの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。