# データベース同期(準備)

データベース同期とは、モデル中のオブジェクトとデータベース中のオブジェクトとを比較し、相違点を双方に反映する機能のことです。
この画面では、データベース同期の対象となるオブジェクトの選択や、同期のオプション設定を行います。

■ 共通部分

項目名 | 説明
--- | ---
開始 | 同期作業を行うためにリバースエンジニアリングを開始します。
キャンセル | 画面を閉じます。
ヘルプ | ヘルプ画面を開きます。

■全般タブ

全般タブでは、対象となるデータベースユーザー及びデータベースオブジェクトの選択を行います。

項目名 | 説明
--- | ---
デフォルトの 同期方法 | モデル中のオブジェクトとデータベース中のオブジェクトに差異があった場合に、どちらに差分を適用するかの省略値を指定します。
比較対象 | [モデルに存在するオブジェクトのみ比較する]を選択した場合、モデル中のオブジェクトと対になるデータベースオブジェクトのみを比較対象とします。このため、データベースにのみ存在するオブジェクトは比較の対象となりません。モデル単位で比較する場合は、「比較対象モデル」コンボボックスにて対象のモデルを選択することにより、比較オブジェクトを絞り込むことが可能です。 [指定したユーザーの全オブジェクトと比較する]を選択した場合、[比較対象ユーザー]でチェックを入れたユーザが保持する全てのデータベースオブジェクトと、モデル中の全オブジェクトを比較します。 [DBマッピング]は比較対照となるDBマッピングを選択します。 ※モデルオプションのデータベースタイプが「SQL Server・マルチDB」選択時に有効です。

■オプションタブ

・テーブルコメントの設定方法

項目名 | 説明
--- | ---
設定方法 | データベーステーブルのコメント情報にセットする内容を指定します。 定義情報をセット… エンティティ定義（エンティティの説明文）をセットします。 論理名をセット… エンティティの名称（論理名）をセットします。 論理名 + 定義情報（改行コード区切り）… エンティティの名称（論理名）とエンティティ定義（エンティティの説明文）の両方をセットします。 2つの情報の間には、改行コードが挿入されます。 論理名 + 定義情報（区切り文字指定）… エンティティの名称（論理名）とエンティティ定義（エンティティの説明文）の両方をセットします。 2つの情報の間には、指定された区切り文字が挿入されます。 セットしない… エンティティ定義をセットしません。
区切り文字 | 論理名と定義情報を区分けする文字を指定します。 ※設定方法を[論理名 + 定義情報（区切り文字指定)]と選択した場合のみ入力可能になります。

・カラムコメントの設定方法

項目名 | 説明
--- | ---
設定方法 | データベースカラムのコメント情報にセットする内容を指定します。 定義情報をセット… 属性定義（属性の説明文）をセットします。 論理名をセット… 属性の名称（論理名）をセットします。 論理名 + 定義情報（改行コード区切り）… 属性の名称（論理名）と属性定義（属性の説明文）の両方をセットします。 2つの情報の間には、改行コードが挿入されます。 論理名 + 定義情報（区切り文字指定）… 属性の名称（論理名）と属性定義（属性の説明文）の両方をセットします。 2つの情報の間には、指定された区切り文字が挿入されます。 セットしない… 属性定義をセットしません。
区切り文字 | 論理名と定義情報を区分けする文字を指定します。 ※設定方法を[論理名 + 定義情報（区切り文字指定)]と選択した場合のみ入力可能になります。

・リバースオプション

項目名 | 説明
--- | ---
エンティティ名の 取得に名称変換 テーブルを使う | エンティティ名を名称変換テーブルを使って取得する場合にはチェックを入れます。 ※テーブルコメントの設定方法を[定義情報をセット]と指定した場合のみ入力可能になります。
属性名の取得に 名称変換 テーブルを使う | 属性名を名称変換テーブルを使って取得する場合にはチェックを入れます。 ※カラムコメントの設定方法を[定義情報をセット]と指定した場合のみ入力可能になります。
オブジェクトの 推定 | ドメインや論理的なリレーションシップ情報などの、データベース上に情報として存在しないオブジェクトの作成方法を指定します。 ドメインを推定する… リバースしたテーブルのカラム情報を元に、ドメインを自動作成します。 ※ ドメインは、名称・データ型・制約、省略値が全て同じカラムに対して一つのドメインを作成しますが、例えばデータ型が異なる同一名称のカラムが存在する場合は、そのカラムに対するドメインを作成しません。 主キーを推定する… 主キーの存在しないテーブルについて、そのテーブルに存在する重複不可制約または重複不可キーを主キーとしてリバースします。 インデックス情報を元にリレーションシップを推定する… あるテーブルの主キー情報と他のテーブルのインデックス情報を比較し、主キー情報を全て含んだインデックスを保持するテーブルに対して、論理リレーションシップを張ります。 カラム名を元にリレーションシップを推定する… あるテーブルの主キー情報と他のテーブルのカラム情報を比較し、主キー情報を全て含んだカラムを保持するテーブルに対して、論理リレーションシップを張ります。

・フォワードオプション

項目名 | 説明
--- | ---
インデックスの 出力 | データベーステーブルにインデックスを作成する場合にチェックを入れます。 主キー… エンティティの主キー情報を元に、テーブルに主キー制約を作成します。 外部キー (FK)… リレーションシップ情報を元に、テーブルに参照整合性制約を作成します。 索引… エンティティの二次キー情報を元に、重複不可制約やインデックスを作成します。
エクステント 情報の出力 | テーブルやインデックスの作成時に、データ格納領域の情報を付加する場合にチェックを入れます。 各チェック項目は、CREATE TABLE / CREATE INDEX 文の STORAGE 句にあるパラメータを示します。 ※この機能は、Oracle データベースを使用するデータモデルでのみ有効となります。
名称変換 テーブル編集 | 名称変換テーブルエディタを開き、名称変換テーブルを編集します。