11.3.8 インデクスが格納されているデータ用DBエリアを変更する方法
インデクスが格納されているデータ用DBエリアを別のデータ用DBエリアに変更したい場合は,対象のインデクスをいったん削除したあとで再定義する必要があります。そのあとで,インデクスを再作成する必要があります。
- メモ
-
実表が格納されているデータ用DBエリアを別のデータ用DBエリアに変更したい場合は,「11.1.18 実表が格納されているデータ用DBエリアを変更する方法」を参照してください。
次の手順に従って,インデクスが格納されているデータ用DBエリアを,別のデータ用DBエリアに変更してください。
なお,新たなデータ用DBエリアを追加する必要がある場合は,「11.11.1 データ用DBエリアを追加する方法」を参照してください。そのあとで,インデクスが格納されているデータ用DBエリアを変更してください。
手順
-
インデクスの定義情報を確認する
実表にインデクスを定義したときのCREATE INDEX文の指定内容を確認してください。実表にインデクスを再定義する際に使用します。
インデクスを定義したときのCREATE INDEX文の指定内容がわからない場合は,「付録B.22 ディクショナリ表の検索」の「(30) インデクスの定義情報を調べる場合」を参照してください。ディクショナリ表を検索すると,インデクスを定義したときのCREATE INDEX文の指定内容が確認できます。
-
インデクスを削除する
DROP INDEX文で,インデクスを削除してください。
-
インデクスを再定義する
実表にCREATE INDEX文でインデクスを再定義してください。CREATE INDEX文を作成する際の留意事項を次に示します。
-
手順1.で確認したインデクスを定義したときのCREATE INDEX文の指定内容を使用して,CREATE INDEX文を作成してください。
-
CREATE INDEX文のIN DBエリア名に,インデクスを格納する別のデータ用DBエリアのDBエリア名を指定してください。
-
-
インデクスを再作成する
adbidxrebuildコマンドで,手順3.で定義したインデクスを再作成してください。
これで,インデクスが格納されているデータ用DBエリアを,別のデータ用DBエリアに変更できます。
- メモ
-
-
adbidxrebuildコマンドについては,マニュアルHADB コマンドリファレンスを参照してください。
-
DROP INDEX文およびCREATE INDEX文については,マニュアルHADB SQLリファレンスを参照してください。
-