レンジクラスター表を利用するには
提供:DB2逆引きWiki
【DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#実装編】 【DB2逆引きリファレンス目次#索引】
目次 |
前提
- データベース接続が必要
- 以下のいずれかが必要: SYSADM権限, DBADM権限
- もしくは以下の特権のすべて: データベースに対するCREATETAB特権、表スペースに対するUSE特権、スキーマに対するCREATEIN特権
解説
レンジクラスター表の機能を利用するには、CREATE TABLEのORGANIZE BY KEY SEQUENCEオプションを用います。
CREATE TABLE 表名 ( 列定義 ) ....
ORGANIZE BY KEY SEQUENCE ( レンジキー名 [STARTING FROM 最小値 ] ENDING AT 最大値 ) オーバーフロー指定
- レンジキー名
- レンジキーとして用いる列の名前を指定します。
- オーバーフロー指定
-
範囲外のレンジキーの値の取り扱い方法を以下のいずれかで指定します。
- ALLOW OVERFLOW
- レンジキーとして指定した列が、範囲外の値を持つことを許します。
- DISALLOW OVERFLOW
- レンジキーとして指定した列が、範囲外の値を持つことを禁止します。
使用例
レンジキー(ここではuserid)を指定して、レンジクラスター表(ここではusers)を定義する例。
db2 ==> CREATE TABLE users (userid int, firstname VARCHAR(16), lastname VARCHAR(16), age INT, gender INT, pref VARCHAR(32)) ORGANIZE BY KEY SEQUENCE (userid STARTING FROM 1 ENDING AT 10000)↓
注意
- レンジキーとして指定する列の型は整数(SMALLINT, INTもしくはBIGINTのいずれか)であり、NOT NULLかつUNIQUEである必要があります。
- レンジクラスター表ではレンジキーの範囲分のディスクスペースが最初に確保されるため、サイジングには注意してください。