単一のテーブルに対してのDDLの生成

<< 目次を表示 >>

ページ位置:  データベースの設計・生成と読み込み > DDLの生成 >

単一のテーブルに対してのDDLの生成

データベース設計を行う場合には、データベース要素(主にテーブル)を指定してDDLを生成することができます。生成の際には、いくつかの設定を変更して生成することができます。

 

 

利用手順:

リボン

  • コード > データベース > データベースビルダー >  対象の項目を右クリック > DDLの生成
  • 対象の要素を選択して、コード > データベース > DDLの生成

 

 

DDLの生成ダイアログには、以下の2つのグループ(タブ)があります。

 

生成グループ

項目

説明

既存のファイルを削除

このボタンを押すと、対象のテーブルに対応するDDLファイルを削除します。

生成する項目の選択

一覧には、対象として選択したテーブルのみが表示されている状態となります。から、生成対象のテーブルを選択します。

単一ファイル

この項目を選択すると、すべてのテーブルの内容を1つのファイルに生成します。 ボタンを押し、対象のファイルを指定して下さい。

テーブルごとに別ファイル

それぞれのテーブルごとに別々のファイルに生成します。

生成を実行すると、ファイル名が指定されていないテーブルについては、ファイル名を指定するためのダイアログが表示されます。

生成したDDLを実行

(既定の選択肢) 生成したDDLを、そのままデータベースに対して実行します。この機能を実行すると、「データベースビルダー」のタブが開きます。

データベースビルダーでは、DDLを実行し、その結果やエラー内容を表示できます。これにより、外部にDDLファイルを作成し、別にツールで読み込む必要はありません。

生成

このボタンを押すと、生成処理を実行します。

表示

生成結果のDDLを、Enterprise Architectのエディタで開いて表示します。

ユーザーのオプション設定でDDLのエディタが指定されている場合には、そのエディタを起動して開きます。

(参考:ソースコードサブウィンドウユーザーのオプション - コードの編集)

閉じる

このダイアログを閉じます。

 

 

オプショングループ

オプショングループでは、出力対象の内容を設定できます。出力しない場合にはFalseに設定して下さい。

項目

説明

生成対象

テーブル -  テーブルを出力対象に含めます。 (*)

主キー - 主キーの内容をDDLに生成します。 ($)

外部キー - 外部キーの内容をDDLに生成します。 ($)

インデックス - インデックスの内容をDDLに生成します。 ($)

一意制約 - 一意制約の内容をDDLに生成します。 ($)

チェック制約 - チェック制約の内容をDDLに生成します。 ($)

テーブルトリガ - テーブルトリガの内容をDDLに生成します。 ($)

テーブルのプロパティ - 追加のプロパティの内容をDDLに生成します。 ($)

長さの指定(Oracle) - Oracleの長さの制約の内容をDDLに生成します。 ($)

各テーブルの生成内容

ビュー -  ビューを出力対象に含めます。 (*)

プロシージャ - プロシージャを出力対象に含めます。 (*)

ファンクション - ファンクションを出力対象に含めます。 (*)

シーケンス - シーケンスを出力対象に含めます。 (*)

パッケージ(Oracle) - Oracleのパッケージを出力対象に含めます。 (*)

出力内容

pre・postのクエリを出力 -  '_PreStatements' や '_PostStatements' で定義されている内容を出力するかどうかの設定です。

オーナーを出力 - 全ての要素に対して、スキーマやオーナの情報を出力するかどうかの設定です。

コメントを出力 - DDLにコメントを出力するかどうかの設定です。

ヘッダのコメントを出力 - DDLにヘッダコメントを出力するかどうかの設定です。 (#)

要素のコメントを出力 - DDLにテーブルやビューなどの要素のコメントを出力するかどうかの設定です。 (#)

列のコメントを出力 - DDL二列ごとのコメントを出力するかどうかの設定です。 (#)

Drop文を生成 - 'drop Table' 文がDDLに生成されます。

Use Database - 文字列を入力すると、その内容がDDLの先頭にUse文として追加されます。

別名を利用 - テーブルや列の別名をDDL生成で利用します。別名が設定されていない場合には、名前を利用します。

制約とテーブルを別々に生成 - 制約(主キーや外部キー・一意制約)をALTER TABLE文の中に出力します。チェックを外す場合には、CREATE TABLE文の中に出力します。

 

注意:

  • (*) - この項目は、対象の要素の選択によっては自動的にTrueに設定されます。例えば、テーブル要素に対して出力する際にテーブルの項目をFalseにした場合、自動的にTrueに変更してから生成を実行します。
  • ($) - この項目は、テーブルの項目がFalseの場合には自動的にFalseになります。
  • (#) - この項目は、コメントを出力の項目がFalseの場合には自動的にFalseになります。
  • アクセス権(セキュリティ)機能が有効になっている場合には、「ソースコードやDDLの生成」のアクセス権が必要です。
  • PostgreSQLの場合で自動インクリメントの列を利用する場合には、必ず「シーケンス」の項目を「True」にする必要があります。
  • Oracleでシーケンスを生成する場合には、テーブルトリガシーケンスを生成対象にする必要があります。これは、列に対してシーケンスの値が適切に生成されるために、トリガも生成する必要があることが理由です。また、列の自動ナンバーのプロパティが「True」になっている必要があります。
  • DDL生成テンプレートをカスタマイズすることで、Enterprise Architectのモデルから生成されるDDLを自由にカスタマイズすることができます。

 

 

参照: