【DB2逆引きリファレンス目次】 【DB2逆引きリファレンス目次#保守作業編】 【DB2逆引きリファレンス目次#データの再編成】
前提
- データベース接続が必要
- 以下のいずれかが必要: SYSADM権限, SYSCTRL権限, SYSMAINT権限, DBADM権限, 再編成する表に対するCONTROL特権
解説
表をインプレースモードで再編成するには、CLPのREORGコマンドを用います。
REORG TABLE 表名 [INDEX 索引名 ] INPLACE
[ALLOW READ ACCESS] [NOTRUNCATE TABLE]
表名
: 再編成する表の名前を指定します。
INDEX 索引名
: 表を再編成する際に使用する索引を指定します。
ALLOW READ ACCESS
: 再編成中の表へのアクセスを参照のみに制限します。指定しない場合、再編成中の表に対する書き込みも可能となります。
NOTRUNCATE TABLE
: 再編成後に不要となった領域の切捨てを行いません。
使用例
表(ここではemployee)を索引(ここではempindex)に基づいて、インプレースモードで再編成する例。
db2 ==> REORG TABLE employee INDEX empindex INPLACE↓
注意
- インプレースモードで表の再編成を行うには表がTYPE2索引を持つ必要があります。TYPE1索引をTYPE2索引に変更するには索引の再編成を行ってください。
- インプレースモードではLONGおよびLOBデータの再編成は行えません。
- 再編成後に不要となった領域を切り捨てる際、表に対して一時的にSロック(参照ロック)がとられてしまうので注意してください。