Oracleで表のパーティションを作成する方法は何ですか?

Oracleのテーブルパーティショニングの方法は2つあります:手動パーティショニングと自動パーティショニング。

  1. 手動パーティション:手動パーティション方法を使用すると、テーブルを作成する際に、パーティションの数とパーティションキーを明示的に指定する必要があります。パーティションキーは、テーブル内の1つまたは複数の列であり、特定の値の範囲に基づいてデータを異なるパーティションに分散させるために使用されます。例えば、時間の範囲、地理的位置、またはその他のビジネス要件に従ってパーティションを行うことができます。

以下は、テーブルを作成する際の手動パーティション構文の例です。

CREATE TABLE table_name (
    column1 data_type,
    column2 data_type,
    ...
) 
PARTITION BY RANGE (partition_key)
(
    PARTITION partition_name1 VALUES LESS THAN (value1),
    PARTITION partition_name2 VALUES LESS THAN (value2),
    ...
);
  1. 自動パーティション:Oracleは自動パーティションの方法を使用し、事前定義されたルールに従って自動的にパーティションを作成します。自動パーティションを行うためには、まずパーティションテンプレートを作成し、パーティションキー、パーティション戦略、およびパーティションの命名規則を定義する必要があります。そして表を作成する際に、パーティションテンプレートを使用してパーティションを指定します。

以下は、テーブルを作成する際の自動パーティション構文の例です。

CREATE TABLE table_name (
    column1 data_type,
    column2 data_type,
    ...
) 
PARTITION BY RANGE (partition_key)
SUBPARTITION BY HASH (subpartition_key)
SUBPARTITIONS 4
STORE IN (tablespace_name)
(
    PARTITION BY RANGE (partition_key) INTERVAL (interval_value)
    (
        SUBPARTITION partition_name1 VALUES LESS THAN (value1),
        SUBPARTITION partition_name2 VALUES LESS THAN (value2),
        ...
    )
);

注意:自動分割を使用するには、データベースで分割機能を有効にし、分割テーブルスペースのサポートが必要です。

bannerAds