表のインプレース再編成を行うには
提供:DB2逆引きWiki
【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ロック(参照ロック)がとられてしまうので注意してください。