Hitachi

Hitachi Advanced Data Binder システム構築・運用ガイド


11.1.7 シングルチャンク表をマルチチャンク表に変更する方法

シングルチャンク表をマルチチャンク表に変更する場合は,シングルチャンク表をいったん削除してください。そのあとで,次のどちらかのマルチチャンク表として再定義してください。

重要

シングルチャンク表をマルチチャンク表に変更する手順を次に示します。

手順

  1. マルチチャンク表に変更するシングルチャンク表の表定義を確認する

    シングルチャンク表を定義したときのCREATE TABLE文の指定内容を確認してください。手順4.でマルチチャンク表を定義する際に使用します。

    なお,シングルチャンク表を定義したときのCREATE TABLE文の指定内容がわからない場合は,「付録B.22 ディクショナリ表の検索」の「(28) 実表の定義情報を調べる場合」を参照してください。ディクショナリ表を検索すると,シングルチャンク表を定義したときのCREATE TABLE文の指定内容が確認できます。

  2. シングルチャンク表の全データを出力する

    adbexportコマンドで,シングルチャンク表の全データを出力データファイルに出力してください。

  3. シングルチャンク表を削除する

    削除動作の指定を省略したDROP TABLE文で,シングルチャンク表を削除してください。

  4. マルチチャンク表を定義する

    CREATE TABLE文で,マルチチャンク表を定義してください。CREATE TABLE文の指定内容を作成する際の留意事項を次に示します。

    • 手順1.で確認したシングルチャンク表を定義したときのCREATE TABLE文の指定内容を使用して,CREATE TABLE文を作成してください。

    • CREATE TABLE文にチャンク指定を追加してください。なお,レギュラーマルチチャンク表とアーカイブマルチチャンク表で,チャンク指定の指定内容が異なります。チャンク指定の指定内容については,「11.4.1 マルチチャンク表を定義する方法」を参照してください。

  5. マルチチャンク表にインデクスを定義する

    削除したシングルチャンク表にインデクスを定義していた場合は,手順4.で定義したマルチチャンク表に,CREATE INDEX文でインデクスを定義してください。CREATE INDEX文を作成する際の留意事項を次に示します。

    • シングルチャンク表のインデクスを定義したときのCREATE INDEX文の指定内容がわからない場合は,「付録B.22 ディクショナリ表の検索」の「(29) インデクスの定義情報を調べる場合」を参照してください。ディクショナリ表を検索すると,シングルチャンク表のインデクスを定義したときのCREATE INDEX文の指定内容が確認できます。

    • マルチチャンク表には,ユニークインデクスは定義できません。

  6. マルチチャンク表にデータを格納する

    adbimportコマンドで,手順4.で定義したマルチチャンク表に,手順2.で出力したデータを格納してください。その際,adbimportコマンドには-dオプションおよび-bオプションは指定しないでください。

  7. ビュー表の無効化を解除する

    手順3.で削除したシングルチャンク表を基表とするビュー表が無効化されます。そのため,マルチチャンク表の定義後に,ビュー表の無効化を解除する必要があります。「11.2.8 ビュー表の無効化を解除する方法」の「(6) 表を誤って削除してしまったことによってビュー表が無効化された場合」を参照して,ビュー表の無効化を解除してください。

メモ

adbexportコマンドおよびadbimportコマンドについては,マニュアルHADB コマンドリファレンスを参照してください。

DROP TABLE文,CREATE TABLE文およびCREATE INDEX文については,マニュアルHADB SQLリファレンスを参照してください。