パーティション表を作成する際に、パーティションに最初の行が挿入されるまでセグメントの作成を遅延させることができます。その後、パーティションに最初の行が挿入されたときに、実表のパーティション、LOB列、すべてのグローバル索引およびローカル索引パーティションのセグメントが作成されます。遅延セグメント作成は、次の方法で制御できます。
初期化パラメータ・ファイルで初期化パラメータDEFERRED_SEGMENT_CREATION
をTRUE
またはFALSE
に設定します。
SQL文ALTER
SESSION
またはALTER
SYSTEM
により、初期化パラメータDEFERRED_SEGMENT_CREATION
をTRUE
またはFALSE
に設定します。
SQL文CREATE
TABLE
を発行する際に、パーティション句でキーワードSEGMENT
CREATION
IMMEDIATE
またはSEGMENT
CREATION
DEFERRED
を指定します。
既存の作成済パーティションに対するセグメントの作成は、SQL文ALTER
TABLE
MODIFY
PARTITION
ALLOCATE
EXTENT
により強制できます。この文により、CREATE
TABLE
時に指定された初期エクステント数より1つ多くエクステントが割り当てられます。
シリアル化可能トランザクションは、遅延セグメント作成では動作しません。セグメントが作成されていない空の表、またはまだセグメントのない時間隔パーティション表のパーティションにデータを挿入すると、エラーが発生する場合があります。
関連項目:
初期化パラメータDEFERRED_SEGMENT_CREATION
の詳細は、『Oracle Databaseリファレンス』を参照してください。
SQL文ALTER
SESSION
およびALTER
SYSTEM
の詳細は、『Oacle Database SQL言語リファレンス』を参照してください。
SQL文CREATE
TABLE
のキーワードSEGMENT
CREATION
IMMEDIATE
およびSEGMENT
CREATION
DEFERRED
の詳細は、『Oacle Database SQL言語リファレンス』を参照してください。