Skip to main content

 

データを使用する

 

OutSystems

1対1の関係を作成する

1対1の関係を使用し、まだデータベースモデルにない情報を追加して既存のエンティティを拡張できます。

よくあるのは、エンティティにアトリビュートを追加して拡張したいのに追加できない場合です。これは、別のモジュールから参照されているエンティティを使用していて、参照されているモジュールではさらにアトリビュートを追加する意味がない場合によく起こります。その場合、追加の情報を保存するためにモジュールにエンティティを1つ作成します。

既存のエンティティに1対1の関係を作成するには、以下の手順を実行します。

  1. エンティティを作成する

  2. Idアトリビュートを、拡張するエンティティの識別子になるよう変更します。

  3. アトリビュートを追加します。

GoOutWebアプリケーションでは、レストランやホテルのような場所の評価やレビューができます。このアプリケーションは、Eメール、電話番号、Twitterアカウントといったいくつかのエンドユーザー情報を保存します。

エンドユーザーを保存するのにUserシステムエンティティを使用しているため、アトリビュートを追加することはできません。ユーザーに関する詳細な情報を保存するために、追加のエンティティを作成する必要があります。それには、以下の手順を実行します。

  1. [Data]タブで、GoOutWebDataModelエンティティ図を開きます。
  2. ない場合は、Userシステムエンティティを[Data]タブから図にドラッグします。
  3. 図キャンバスを右クリックして[Add Entity]を選択します。
  4. Profileという名前を付けます。
  5. IdアトリビュートをUserIdという名前に変更します。

    OutSystemsは、与えられた名前に基づいてデータ型を「User Identifier」に設定します。このデータ型はUserエンティティの識別子であるため、OutSystemsは、作成されたProfileエンティティとUserエンティティとの間に接続を作成します。

  6. 以下のアトリビュートをProfileエンティティに追加します。

    • Twitter、Text型
    • Facebook、Text型
    • Photo、Binary Data型

1対1関係のエンティティ図

その結果、ProfileエンティティによってUserエンティティが拡張されます。Profileレコードが作成されるたびに、その識別子は、それが属するUserレコード識別子の値を必ず持ちます。