DBMS_IOTパッケージは、索引構成表に対する連鎖行への参照をANALYZEコマンドを使用して格納できる表を作成します。また、DBMS_IOTによって、enable_constraint操作時に、索引構成表の中で制約に違反する行への参照を格納できる例外表も作成できます。
DBMS_IOTは、データベース・インストール時にロードされません。DBMS_IOTをインストールするには、ADMINディレクトリにあるdbmsiotc.sqlを実行します。
この章では、次の項目について説明します。
|
注意: Oracle Databaseリリース8.1でIOTの論理ROWIDが導入されたため、このパッケージに含まれるプロシージャを使用する必要はなくなりましたが、これは下位互換性のためにのみ残されています。ただし、Oracle Databaseリリース8.0を実行するサーバーには必要です。 |
表82-1 DBMS_IOTパッケージのサブプログラム
| サブプログラム | 説明 |
|---|---|
|
|
索引構成表に対する連鎖行への参照を |
|
|
索引構成表の中で制約に違反する行を格納できる例外表を作成します。 |
このプロシージャは、索引構成表に対する連鎖行への参照をANALYZEコマンドを使用して格納できる表を作成します。
DBMS_IOT.BUILD_CHAIN_ROWS_TABLE ( owner IN VARCHAR2, iot_name IN VARCHAR2, chainrow_table_name IN VARCHAR2 default 'IOT_CHAINED_ROWS');
CREATE TABLE l(a char(16),b char(16), c char(16), d char(240),
PRIMARY KEY(a,b,c)) ORGANIZATION INDEX pctthreshold 10 overflow;
EXECUTE DBMS_IOT.BUILD_CHAIN_ROWS_TABLE('SYS','L','LC');
次の列を含んだ連鎖行表が作成されます。
Column Name Null? Type ------------------------------ -------- ---- OWNER_NAME VARCHAR2(30) TABLE_NAME VARCHAR2(30) CLUSTER_NAME VARCHAR2(30) PARTITION_NAME VARCHAR2(30) SUBPARTITION_NAME VARCHAR2(30) HEAD_ROWID ROWID TIMESTAMP DATE A CHAR(16) B CHAR(16) C CHAR(16)
このプロシージャは、次のSQL文の実行時に、索引構成表の中で制約に違反する行を格納できる例外表を作成します。
ALTER TABLE ... ENABLE CONSTRAINT ... EXCEPTIONS INTO
ALTER TABLE ... ADD CONSTRAINT ... EXCEPTIONS INTO
DBMS_IOT.BUILD_EXCEPTIONS_TABLE ( owner IN VARCHAR2, iot_name IN VARCHAR2, exceptions_table_name IN VARCHAR2 default 'IOT_EXCEPTIONS');