13.6.1 列を追加する前に
- 〈この項の構成〉
(1) FIX表に列を追加する場合の留意事項
データが格納されているFIX表には列を追加できません。したがって,データが格納されているFIX表に列を追加する場合は,次に示す手順で列を追加します。
- 〈手順〉
-
-
pdrorgコマンドで表データをアンロードします。
-
PURGE TABLEで表データを削除します。
-
ALTER TABLEで列を追加します。
-
pdholdコマンドで表格納RDエリアを閉塞します。
-
pdloadコマンドで表データをデータロードします。
-
pdlogswap -d sys -wコマンドで,システムログファイルをスワップします。
-
pdcopyコマンドでバックアップを取得します。バックアップの取得については,「バックアップの取得方法」を参照してください。
-
pdrelsコマンドでRDエリアの閉塞を解除します。
- 留意事項
-
-
手順1で表データをアンロードするときに,DAT形式でアンロードする方法とバイナリ形式でアンロードする方法があります。DAT形式でアンロードした方が操作が簡単なため,基本的にはDAT形式でアンロードしてください。
-
DAT形式ファイルに変換できない文字データ(0x00,0x0a)が表中にある場合,その表データをDAT形式でアンロードできません。この場合は,バイナリ形式でアンロードしてください。
-
DAT形式でアンロードしたときの方法については,「例題6(FIX表に列を追加する場合:DAT形式でアンロードする場合)」を参照してください。
-
バイナリ形式でアンロードしたときの方法については,「例題7(FIX表に列を追加する場合:バイナリ形式でアンロードする場合)」を参照してください。
-
-
(2) 注意事項
-
改竄防止表には列を追加できません。
-
表に列を追加すると,その表を使用しているストアドルーチンが無効になります。この場合,ALTER PROCEDURE又はALTER ROUTINEでストアドルーチンを再作成してください。
-
トリガSQL文中に指定している表にNOT NULL列を追加すると,トリガが無効になります。この場合,ALTER TRIGGER又はALTER ROUTINEでトリガを再作成してください。
-
表に列を追加した後,必要があれば最適化情報収集ユティリティ(pdgetcstコマンド)を実行してください。最適化情報収集ユティリティの実行要否については,マニュアル「HiRDB コマンドリファレンス」を参照してください。