SEWB+/REPOSITORY 辞書設計ガイド
ここでは,ERwin/ERX(バージョン2.6以前)で作成したエンティティレポートの辞書登録について説明します。
ERwin/ERXで次に示す設定をしてCSV形式ファイルを出力してください。
表B-1 エンティティレポートの出力項目と指定順序
| 指定順 | 出力項目(オプション名) | |
|---|---|---|
| ERwin/ERX 日本語版 | ERwin/ERX 英語版 | |
| 1 | テーブル名(テーブルオプション) | Table Name(Table Option) |
| 2 | エンティティ名(エンティティオプション) | Entity Name(Entity Option) |
| 3 | 属性名(属性オプション) | Attribute Names(Attribute Option) |
| 4 | カラム/タイプ(属性オプション) | Columns/Types(Attribute Option) |
| 5※1 | コメント(エンティティオプション) | Note(Entity Option) |
| 5※1 | 定義(エンティティオプション) | Definition(Entity Option) |
| 6※2 | 外部キー(リレーションシップオプション) | Foreign Keys(Relationship Option) |
| 7※3 | カンマ区切り(レポート形式) | Comma Delimited(Report Format) |
| 8※3 | ヘッダー(表示形式) | Header(Multi-Valued Format) |
| 9※3 | マージ(表示形式) | Merge(Multi-Valued Format) |
| 10※3 | 改行コードの除去※4 | Remove Newline |
依存関係のあるエンティティレポートを辞書登録する場合の変換規則について説明します。エンティティレポート形式の辞書登録の例を次の図に示します。
図B-2 エンティティレポート形式の辞書登録の例
エンティティレポート形式のCSV形式ファイルを辞書に登録するときの指定によって,登録されるデータ項目およびデータ項目の関係が異なります。図B-2は,属性レポートの同時入力の指定と,物理名の異なる外部キーを識別する指定をした場合の登録例です。
物理名の異なる外部キーを識別して登録するには,CSV形式ファイル入力コマンドで引数「/Z 物理名の異なる外部キーを識別する」を省略するか,[CSV入力オプション]ダイアログの「物理名の異なる外部キーを識別する」のチェックをオンにします。
この指定をしない場合には,図B-2で示した「2'」と「4'」のデータ項目は登録されません。
エンティティレポート中に,同一のカラム名が定義された属性情報が複数ある場合,その情報をマージしてデータ項目辞書に登録できます。
この場合のエンティティレポートの変換規則を次の図に示します。
図B-3 エンティティレポート形式の辞書登録の例(同一カラム名をマージする場合)
エンティティレポート形式のCSV形式ファイルを辞書に登録するときの指定によって,登録されるデータ項目およびデータ項目の関係が異なります。図B-3は,属性レポートの同時入力の指定と,物理名の異なる外部キーを識別する指定をした場合の登録例です。
同一カラム名をマージして辞書に登録するには,CSV形式ファイル入力コマンドで引数「/R 同一カラム名のマージ有無」に「use」を指定するか,または[CSV入力オプション]ダイアログの「同一カラム名の属性をマージする」のチェックをオンにします。
なお,FK属性のカラム名と,その移行先のPK属性のカラム名が同じ場合は,この指定に関係なく,必ずマージされて登録されます。詳細は,「付録B.2(2) エンティティレポートからデータ項目辞書への変換規則」を参照してください。
同一カラム名の属性のマージでは,マージされる属性間で,属性の値が一致している必要があります。
マージされる属性間の条件を次の表に示します。条件は,エンティティレポートを単独で入力する場合と,エンティティレポートと属性レポートを同時に入力する場合とで異なります。
表B-2 マージされる属性間の条件
| 属性情報 | マージする属性間の条件 | ||
|---|---|---|---|
| エンティティレポートを単独で入力 | エンティティレポートと属性レポートを同時に入力 | ||
| カラム名 | ○ | ○ | |
| 属性名 | ○ | ○ | |
| カラムデータタイプ (精度,スケールを含む) |
○ | ○ | |
| デフォルト値 | − | ○ | |
| 移行先を示す情報 | 親テーブル名 | × | △ |
| ベース名 | − | △ | |
| 主キー | × | × | |
| 外部キー | × | × | |
| コメントまたは定義 | − | ×※ | |
データ項目辞書の定義項目とエンティティレポート形式の対応を次の表に示します。
表B-3 データ項目辞書とエンティティレポートの対応
| データ項目辞書の定義項目 | エンティティレポート形式 | |||
|---|---|---|---|---|
| 結合項目※1 | 構成項目 | |||
| 単項目 | 結合項目とその構成項目 結:結合項目 構:構成項目 |
|||
| 名称 | データ項目名 | テーブル名 | カラム名※2 | 結:カラム名※2 構:カラム名+サフィックス※2 |
| 標準名称 | エンティティ名 | 属性名※3 | 結:属性名※3 構:属性名+サフィックス※2,※3 |
|
| フリガナ | × | × | 結:× 構:× |
|
| 属性 | 分類 | 結合データ | カラム名※4,※5 | 結:結合データ 構:カラム名※4,※5 |
| けた数 | − | カラム名※4,※5 | 結:− 構:カラム名※4,※5 |
|
| 小数部 けた数 |
− | カラム名※4,※5 | 結:− 構:カラム名※4,※5 |
|
| 反復回数 | − | × | 結:− 構:× |
|
| 付加情報 | フィールド 1〜n |
× | × | 結:× 構:× |
| コメント | エンティティコメント/定義 | * 属性 コメント/定義 |
結:* 属性 コメント/定義 構:× |
|
| 言語別詳細情報 | 名前 | テーブル名 | カラム名※2 | 結:カラム名※2 構:カラム名+サフィックス※2 |
| タイプ | − | カラム名※4,※5 | 結:− 構:カラム名※4,※5 |
|
| タイプ修飾情報※6 | − | × | 結:− 構:× |
|
| 取りうる値 | − | × | 結:− 構:× |
|
| 初期値 | − | * デフォルト値 | 結:− 構:*※7 |
|
| 言語別 フィールド |
× | × | 結:× 構:× |
|
ERwin/ERXで指定したタイプから,SEWB+/REPOSITORYのデータ項目の分類とタイプへ変換されます。変換にはタイプマッピングの規則が適用され,ERwin/ERXタイプや条件に応じた分類,タイプ,けた数,小数部けた数が設定されます。
標準で用意されているタイプマッピングの規則については,使用するデータベースの種類に応じて次から選択してください。
適用する変換規則は,CSV形式ファイル入力コマンドの引数「/E ファイルフォーマット種別(02-01互換用)」または「/B データベース種別」で指定するか,[CSV入力オプション]ダイアログの「対象データベース選択」で指定します。
なお,これらの変換をするには,あらかじめ環境構築ユティリティで言語別タイプをそれぞれの分類で指定できるタイプとして登録しておく必要があります。標準に設定されている分類とタイプの対応については「2.4.1(3)(a) 分類」を参照してください。
変換規則を表B-4から表B-9に示します。
表B-4 ERwin/ERXのタイプの変換規則A-1(ORACLE)
| ERwin/ERX | SEWB+/REPOSITORY | ||||
|---|---|---|---|---|---|
| データベースタイプ | 精度・長さ | スケール | 分類 | けた数 | 小数部けた数 |
| CHAR | [n] (255) | × | 英数字文字列 | n | − |
| CHARACTER | [n] (255) | × | 英数字文字列 | n | − |
| CHARZ | [n] (255) | × | 英数字文字列 | n | − |
| CURSOR | × | × | なし | − | − |
| DATE | × | × | 日付 | 7 | − |
| DECIMAL | p (38) | [s] (0) | 実数※1 | p | s※3 |
| DISPLAY | p (38) | [s] (0) | なし | p | s※4 |
| FLOAT | [p] (126) | × | 実数 | p | − |
| INTEGER | × | × | 整数 | 38 | − |
| LONG | [n] (16777215) |
× | 英数字文字列 | n | − |
| LONG RAW | [n] (16777215) |
× | なし | n | − |
| LONG VARCHAR | [n] (16777215) |
× | 英数字文字列 | n | − |
| LONG VARRAW | n (16777215) | × | なし | n | − |
| MLSLABEL | [n] (4) | × | なし | n | − |
| NUMBER | [p] (38) | [s] (0) | なし | p+2※2 | s※3 |
| RAW | [n] (2000) | × | なし | n | − |
| RAW MLSLABEL | [n] (255) | × | なし | n | − |
| ROWID | × | × | なし | 2000 | − |
| STRING | [n] (2000) | × | 英数字文字列 | n | − |
| UNSIGNED | [p] (10) | × | なし | p | − |
| VARCHAR | [n] (65533) | × | 英数字文字列 | n | − |
| VARCHAR2 | [n] (2000) | × | 英数字文字列 | n | − |
| VARNUM | × | × | なし | 22 | − |
| VARRAW | n (65533) | × | なし | n | − |
| その他 | [p] | [s] | なし | − | − |
表B-5 ERwin/ERXのタイプの変換規則A-2(ORACLE)
| ERwin/ERXのデータベースタイプ | SEWB+/REPOSITORYの言語別タイプ | |||
|---|---|---|---|---|
| COBOL又はOOCOBOL | C又はC++ | SQL | その他 | |
| CHAR | X | char | CHAR | ※8 |
| CHARACTER | X | char | CHAR | ※8 |
| CHARZ | X | char | フリー定義※6 | ※8 |
| CURSOR | フリー定義※1 | フリー定義※4 | フリー定義※6 | ※8 |
| DATE | X | char | DATE | ※8 |
| DECIMAL | P | float | フリー定義※6 | ※8 |
| DISPLAY | フリー定義※2 | char | フリー定義※6 | ※8 |
| FLOAT | D | float | フリー定義※6 | ※8 |
| INTEGER | フリー定義※3 | int | フリー定義※6 | ※8 |
| LONG | X | char | LONG | ※8 |
| LONG RAW | X | char | フリー定義※6 | ※8 |
| LONG VARCHAR | X | char | フリー定義※6 | ※8 |
| LONG VARRAW | X | char | フリー定義※6 | ※8 |
| MLSLABEL | X | char | フリー定義※6 | ※8 |
| NUMBER | X | char | ※7 | ※8 |
| RAW | X | char | フリー定義※6 | ※8 |
| RAW MLSLABEL | X | char | フリー定義※6 | ※8 |
| ROWID | X | char | フリー定義※6 | ※8 |
| STRING | X | char | フリー定義※6 | ※8 |
| UNSIGNED | フリー定義※4 | unsigned int | フリー定義※6 | ※8 |
| VARCHAR | フリー定義※5 | char | フリー定義※6 | ※8 |
| VARCHAR2 | X | char | VARCHAR2 | ※8 |
| VARNUM | X | char | フリー定義※6 | ※8 |
| VARRAW | X | char | フリー定義※6 | ※8 |
| その他 | フリー定義※4 | フリー定義※4 | フリー定義※6 | ※8 |
表B-6 ERwin/ERXのタイプの変換規則B-1(ORACLE)
| ERwin/ERX | SEWB+/REPOSITORY | ||||
|---|---|---|---|---|---|
| データベースタイプ | 精度・長さ | スケール | 分類 | けた数 | 小数部けた数 |
| CHAR | [n] (18) | × | 英数字文字列 | n | − |
| CHARACTER | [n] (18) | × | 英数字文字列 | n | − |
| DATE | × | × | なし | 18 | − |
| DECIMAL | [p] (18) | [s] (0) | 実数※1 | p | s※2 |
| FLOAT | × | × | 実数 | 18 | − |
| INTEGER | × | × | 整数 | 18 | − |
| LONG | × | × | 英数字文字列 | 18 | − |
| LONG RAW | × | × | 英数字文字列 | 18 | − |
| LONG VARCHAR | [n] (18) | × | 英数字文字列 | n | − |
| MLSLABEL | × | × | なし | 18 | − |
| NUMBER | [p] (18 (*のとき38)) | [s] (0) | 実数※1 | p | s※2 |
| RAW | [n] (18) | × | 英数字文字列 | n | − |
| RAW MLSLABEL | × | × | なし | 18 | − |
| ROWID | × | × | なし | 18 | − |
| SMALLINT | × | × | 整数 | 18 | − |
| VARCHAR | [n] (18) | × | 英数字文字列 | n | − |
| VARCHAR2 | [n] (18) | × | 英数字文字列 | n | − |
| その他 | [p] (18) | [s] | なし | p | − |
表B-7 ERwin/ERXのタイプの変換規則B-2(ORACLE)
| ERwin/ERXのデータベースタイプ | SEWB+/REPOSITORYの言語別タイプ | |
|---|---|---|
| SQL | その他 | |
| CHAR | CHAR | ※3 |
| CHARACTER | フリー定義※1 | ※3 |
| DATE | フリー定義※1 | ※3 |
| DECIMAL | フリー定義※1 | ※3 |
| FLOAT | フリー定義※1 | ※3 |
| INTEGER | フリー定義※1 | ※3 |
| LONG | LONG | ※3 |
| LONG RAW | フリー定義※1 | ※3 |
| LONG VARCHAR | フリー定義※1 | ※3 |
| MLSLABEL | フリー定義※1 | ※3 |
| NUMBER | NUMBERf※2 | ※3 |
| RAW | フリー定義※1 | ※3 |
| RAW MLSLABEL | フリー定義※1 | ※3 |
| ROWID | フリー定義※1 | ※3 |
| SMALLINT | フリー定義※1 | ※3 |
| VARCHAR | フリー定義※1 | ※3 |
| VARCHAR2 | VARCHAR2 | ※3 |
| その他 | フリー定義※1 | ※3 |
表B-8 ERwin/ERXのタイプの変換規則C-1(HiRDB)
| ERwin/ERX | SEWB+/REPOSITORY | |||||
|---|---|---|---|---|---|---|
| データベースタイプ | 精度・長さ | スケール | 構成項目サフィックス | 分類 | けた数 | 小数部けた数 |
| CHAR | [n] (1) | × | − | 英数字文字列 | n | − |
| CHARACTER | [n] (1) | × | − | 英数字文字列 | n | − |
| DATE | × | × | − | 日付 | 10 | − |
| DEC | [p] (15) | [s] (0) | − | 実数※1 | p | s※2 |
| DECIMAL | [p] (15) | [s] (0) | − | 実数※1 | p | s※2 |
| DOUBLE PRECISION | × | × | − | 実数 | 16 | − |
| FLOAT | × | × | − | 実数 | 16 | − |
| INT | × | × | − | 整数 | 9 | − |
| INTEGER | × | × | − | 整数 | 9 | − |
| INTERVAL YEAR TO DAY | × | × | − | なし | 8 | − |
| INTERVAL HOUR TO SECOND | × | × | − | なし | 6 | − |
| MCHAR | [n] (1) | × | − | 英数字文字列 | n | − |
| MVARCHAR | n (32000) | × | -length | 整数 | 4 | − |
| -char | 英数字文字列 | n | − | |||
| NCHAR | [n] (1) | × | − | 日本語文字列 | n | − |
| NVARCHAR | n (16000) | × | -length | 整数 | 4 | − |
| -char | 日本語文字列 | n | − | |||
| REAL | × | × | − | 実数 | 7 | − |
| SMALLFLT | × | × | − | 実数 | 7 | − |
| SMALLINT | × | × | − | 整数 | 4 | − |
| TIME | × | × | − | 時刻 | 8 | − |
| VARCHAR | n (32000) | × | -length | 整数 | 4 | − |
| -char | 英数字文字列 | n | − | |||
| その他 | [p] | [s] | − | なし | − | − |
表B-9 ERwin/ERXのタイプの変換規則C-2(HiRDB)
| ERwin/ERXのデータベースタイプ | SEWB+/REPOSITORYの言語別タイプ | |||||
|---|---|---|---|---|---|---|
| 構成項目 サフィックス |
COBOL又はOOCOBOL | C又はC++ | SQL | その他 | 備考 | |
| CHAR | − | X | char | CHAR | ※3 | |
| CHARACTER | − | X | char | CHAR | ※3 | |
| DATE | − | X | char | DATE | ※3 | |
| DEC | − | P | フリー定義※1 | DEC | ※3 | |
| DECIMAL | − | P | フリー定義※1 | DEC | ※3 | ※4 |
| DOUBLE PRECISION | − | D | double | フリー定義※2 | ※3 | ※5 |
| FLOAT | − | D | double | FLOAT | ※3 | |
| INT | − | B | long | INT | ※3 | |
| INTEGER | − | B | long | INT | ※3 | |
| INTERVAL YEAR TO DAY | − | P | フリー定義※1 | フリー定義※2 | ※3 | |
| INTERVAL HOUR TO SECOND | − | P | フリー定義※1 | フリー定義※2 | ※3 | |
| MCHAR | − | X | char | MCHAR | ※3 | |
| MVARCHAR | -length※6 | B | short | SMALLINT | ※3 | ※4 |
| -char※6 | X | char | MVARCHAR | ※3 | ※5 | |
| NCHAR | − | N | char | NCHAR | ※3 | |
| NVARCHAR | -length※6 | B | short | SMALLINT | ※3 | ※4 |
| -char※6 | N | char | NVARCHAR | ※3 | ※5 | |
| REAL | − | D | float | フリー定義※2 | ※3 | |
| SMALLFLT | − | D | float | SMALLFLT | ※3 | |
| SMALLINT | − | B | short | SMALLINT | ※3 | |
| TIME | − | X | char | TIME | ※3 | |
| VARCHAR | -length※6 | B | short | SMALLINT | ※3 | ※4 |
| -char※6 | X | char | VARCHAR | ※3 | ※5 | |
| その他 | − | フリー定義※1 | フリー定義※1 | フリー定義※2 | ※3 | |
ERwin/ERXのエンティティレポートに対応するCSV形式ファイルフォーマットについて説明します。
エンティティレポート形式のファイル内部の構成を次に示します。
1行目にはヘッダを,2行目からは個々のデータ項目の定義情報を記述します。エンティティレポート形式では,結合関係を記述できます。ただし,結合項目を階層化して記述することはできません。
結合項目を1行で記述します。そのあとに続けて,その結合項目を構成する個々の構成項目を1行ずつ連続して記述します。構成項目は,次の結合項目を記述するまで,同じ結合項目と関連する構成項目と見なされます。結合項目と構成項目の区別は,テーブル名があるかどうかで判断されます。
ヘッダはERwin/ERXでレポートを出力した場合に付けられます。ヘッダの内容は任意ですが,ヘッダ行のカンマで区切られた列数は,定義情報と同じである必要があります。
定義情報のフォーマットとエンティティレポートで定義する必要のある値と省略できる値を次の表に示します。エンティティレポート形式では,文字列の値はすべてクォーテーション(「"」または「'」)で囲まないで記述します。
表B-10 データ項目の定義情報の記述内容(エンティティレポート形式)
| 記述順 | 記述する定義情報 | 結合項目 | 構成項目 |
|---|---|---|---|
| 1 | テーブル名 | ○ | − |
| 2 | エンティティ名 | △ | − |
| 3 | 属性名 | − | △ |
| 4 | カラム名 | − | ○ |
| 5※1 | エンティティコメント | △ | − |
| 5※1 | エンティティ定義 | △ | − |
| 6※2 | 外部キー | △ | △ |
All Rights Reserved. Copyright (C) 2012, Hitachi, Ltd.