2. ER図の書き方

2.1. er-diagramディレクティブ

er-diagramディレクティブでER図を記載できます。

YAML形式で記述していきます。

.. er-diagram::

   entities:
      エンティティ名:
         columns:
           - カラム1
           - カラム2
           - カラム3
           - カラム4

出力例

ER図

2.2. カラムの属性やラベル

カラムに属性やラベルを指定できます。 以下のプロパティを指定することができます。

凡例

プロパティ 説明
label 任意のラベルを記述することができます。
pk 主キーの場合、trueを設定します。
fk 外部キーの場合、trueを設定します。
notnull 必須の場合、trueを設定します。
.. er-diagram::

   entities:
      エンティティ名:
         columns:
           - 主キーカラム1:  { label: ラベルを表示します, pk: true, notnull: true}
           - 主キーカラム2:  { pk: true, notnull: true}
           - 外部キーカラム: { fk: true }
           - 必須カラム:     { notnull: true }

出力例

ER図

2.3. リレーション

エンティティ間のリレーションの記述方法です。

.. er-diagram::

   entities:
     エンティティ1:
       columns:
         - 項目1
         - 項目2
     エンティティ2:
       columns:
         - 項目1
         - 項目2
     エンティティ3:
       columns:
         - 項目1
         - 項目2
     エンティティ4:
       columns:
         - 項目1
         - 項目2
     エンティティ5:
       columns:
         - 項目1
         - 項目2

   relations:
     - エンティティ1 -- エンティティ2
     - エンティティ2 -> エンティティ3
     - エンティティ1 <- エンティティ4
     - エンティティ2 <-> エンティティ5

出力例

ER図

2.4. リレーションのラベル

ラベルを指定することができます。

.. er-diagram::

   entities:
     エンティティ1:
       columns:
         - 項目1
         - 項目2
     エンティティ2:
       columns:
         - 項目1
         - 項目2

   relations:
     - エンティティ1 -- エンティティ2: { label: ラベルを表示できます }

出力例

ER図

2.5. リレーションの始点と終点にラベルをつける

矢印に記号を付けることで、リレーションの始点と終点にラベルを付けることができます。 以下の記号のみ利用できます。

凡例

記号 表示されるラベル
* 0..*
+ 1..*
1 1
? 0 または 1
.. er-diagram::

    entities:
      エンティティ1:
        columns:
          - 項目1
          - 項目2
      エンティティ2:
        columns:
          - 項目1
          - 項目2

    relations:
      - エンティティ1 *--1 エンティティ2

出力例

ER図

2.6. 外部ファイルの取り込み

サンプル例: example.yml

.. er-diagram:: example.yml

ER図