EDMAddMeta(メタ情報の追加)
機能
引数に指定した定義情報ファイルの内容を基に,サブクラスとプロパティを追加します。サブクラスまたはプロパティを追加した場合は,自動的に動作環境メタ情報ファイルも更新されます。
形式
EDMAddMeta 〔-g〕
-f 定義情報ファイル名
〔-D〕
〔-o データベース定義文格納ファイル
〔-c〕
〔-i インデクス情報ファイル名〕
〔-r RDエリア定義情報ファイル名〕
〔-u { ALL | PARTIAL | NO }〕
〔-n〕
〕
オプション
- -g
- GUID値を自動設定する場合に指定します。このオプションを省略する場合は,定義情報ファイル内のGUIDを定義する個所にGUID値を指定しておく必要があります。なお,メタ情報ファイル内にGUID値を指定しているときにこのオプションを指定した場合,メタ情報ファイル内に指定しているGUID値を優先します。
- -f 定義情報ファイル名
- 定義情報ファイル名を相対パスまたは絶対パスで指定します。定義情報ファイルについては,「4.7 定義情報ファイル」を参照してください。
- -D
- プロパティのデフォルト値をクラスごとに設定する場合に指定します。
- 複数のクラスに対して同じ名前のプロパティを追加する場合に,クラスごとにプロパティのデフォルト値を設定できます。
- -fオプションに指定する定義情報ファイルに,[AddProperty/クラス名]セクションに続くエントリとして,プロパティのデフォルト値を記述します。
- デフォルト値を記述するプロパティを次に示します。
- dmaProp_PropertyDefaultStringプロパティ
- dmaProp_PropertyDefaultInteger32プロパティ
- dmaProp_PropertyDefaultBooleanプロパティ
- 定義情報ファイルの記述方法については,「4.7 定義情報ファイル」を参照してください。
- -Dオプションを指定したときと省略したとき,それぞれで有効になるプロパティを次に示します。
- -Dオプションを指定したとき
- 定義情報ファイルに設定したクラスごとのプロパティのデフォルト値が有効になります。
- 定義情報ファイルで,クラスごとのプロパティのデフォルト値の設定を省略すると,データ型ごとに設定したプロパティのデフォルト値の記述が有効になります。
- -Dオプションを省略したとき
- メタ情報に定義済みのプロパティのデフォルト値が有効になります。
- -o データベース定義文格納ファイル
- 作成したデータベース定義文を格納するファイルを相対パスまたは絶対パスで指定します。このオプションを指定した場合,定義情報ファイルの内容によって,データベース定義文に出力されるSQL文が異なります。
- サブクラスを追加する場合
定義系SQL「CREATE TABLE」文がデータベース定義文に出力されます。
- 追加済みのクラスにプロパティを追加する場合
定義系SQL「ALTER TABLE」文がデータベース定義文に出力されます。
- -c
- -oオプションを指定した場合だけ指定できるオプションです。
- 表名,列名に対して注釈を付けるSQL文を出力する場合に指定します。注釈となる文字列は,定義情報ファイルに指定したクラスおよびプロパティそれぞれのdmaProp_DescriptiveTextプロパティに指定されている値(文字列)です。なお,dmaProp_DescriptiveTextプロパティの指定を省略した場合は,dmaProp_DisplayNameプロパティに指定した値になります。
- -i インデクス情報ファイル名
- -oオプションを指定した場合だけ指定できるオプションです。
- 追加するプロパティに対して定義系SQL「CREATE INDEX」文(インデクス定義文)を出力する場合に,インデクス情報ファイル名を相対パスまたは絶対パスで指定します。インデクス情報ファイルについては,「4.9 インデクス情報ファイル」を参照してください。
- -r RDエリア定義情報ファイル名
- -oオプションを指定した場合だけ指定できるオプションです。
- RDエリア定義情報ファイル名を相対パスまたは絶対パスで指定します。
- -oオプションで指定したデータベース定義文格納ファイル中のRDエリア名を,指定したRDエリア定義情報ファイルの情報に従って出力する場合に指定します。RDエリア定義情報ファイルについては,「4.8 RDエリア定義情報ファイル」を参照してください。
- -u { ALL | PARTIAL | NO }
- -oオプションを指定した場合だけ指定できるオプションです。
- コンテント格納用RDエリア,およびSGMLTEXTデータ格納用RDエリアに対して,データベースの更新ログ取得方式を指定します。
- ALL
- ログ取得モードでユーザLOB用RDエリアを運用する場合に指定します。ログ取得モードで運用すると,ロールバックおよびロールフォワードに必要なデータベースの更新ログを取得します。
- PARTIAL
- 更新前ログ取得モードでユーザLOB用RDエリアを運用する場合に指定します。更新前ログ取得モードで運用すると,ロールバックに必要なデータベースの更新ログを取得します。
- NO
- ログレスモードでユーザLOB用RDエリアを運用する場合に指定します。ログレスモードで運用すると,データベースの更新ログを取得しません。
- なお,このオプションを省略した場合,「ALL」が仮定されます。
- 指定するデータベースの更新ログ取得方式によって,障害が発生した場合のユーザLOB用RDエリアの回復方法は異なります。また,必要となるログ容量も異なります。障害が発生した場合のユーザLOB用RDエリアの回復方法については,マニュアル「HiRDB システム運用ガイド」を参照してください。また,ログ容量については,マニュアル「HiRDB システム導入・設計ガイド」を参照してください。
- -n
- -oオプションを指定した場合だけ指定できるオプションです。
- OIIDを格納するプロパティに対応する列に,非ナル値制約を与える場合に指定します。非ナル値制約とは,指定した列の値に,ナル値を許さない制約のことです。ただし,次のOIIDを格納するプロパティに対応する列には,非ナル値制約を与えません。
- 複数のクラスを一つの表に格納するクラスの場合の,二つ目以降のクラスのOIIDを格納するプロパティに対応する列
- HiRDBの繰り返し列に定義されるOIIDを格納するプロパティに対応する列
注意事項
- このコマンドを実行する前に,DocumentBrokerの実行環境ディレクトリを環境変数「DOCBROKERDIR」に指定してください。
- このコマンドは,DocumentBrokerサーバの停止中に実行してください。
- このコマンドを実行する前に,データベースを起動しておいてください。
- このコマンドを実行する前には,EDMInitMetaコマンドでメタ情報をデータベースに登録しておく必要があります。
- データベースの初期設定をする場合は,EDMCrtSqlコマンドを実行する前に,このコマンドを実行してください。
- このコマンドはデータベース自身の定義であるエリアの定義は実行しません。必要なエリアの定義は,出力されるデータベース定義文に追加してください。
- このコマンドで追加した定義を削除するには,EDMDelMetaコマンドを実行してください。または,コマンド実行前に取得したデータベースのバックアップをリストアしてください。したがって,コマンドを実行する前にはデータベースのバックアップを取得してください。
- 次に示す場合は,インデクス格納RDエリアの名称として「USR_INDEX_AREA」が出力されます。
- -iオプションにインデクス情報ファイル名を指定し,-rオプションを省略してこのコマンドを実行した場合
- RDエリア定義情報ファイルの[IndexArea]セクションに,インデクス情報ファイルに記述した項目に対応するRDエリアの定義を記述していない状態で,-iオプションにインデクス情報ファイル名を指定し,-rオプションにRDエリア定義情報ファイル名を指定してこのコマンドを実行した場合
- 実行結果であるデータベース定義文に対してエリア定義などの必要な項目を追加,修正してからデータベースを作成してください。ただし,-rオプションを指定した場合は,RDエリア定義情報ファイルの指定に従って,RDエリア名が出力されます。
- EDMInitMetaコマンドの-vオプションで指定した値によって,出力するデータベース定義文は異なります。
- HiRDBのオンライン再編成機能を使用する場合,-nオプションを指定してください。なお,メタ情報の表およびOIIDを格納する表は,オンライン再編成機能の対象外です。オンライン再編成機能の対象外の表は,オンライン再編成機能の対象となる表とRDエリアを分けてください。オンライン再編成機能の詳細については,マニュアル「HiRDB Staticizer Option」を参照してください。