0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

SPIRALver1.DB攻略その4-2仮想DB(連携型)-

Last updated at Posted at 2025-09-04

はじめに

前回、仮想DB連携型の前準備として、DB連携の設定を行ったので今回はいよいよ仮想DB連携型を使った実装を行っていきたいと思います。前回の記事をまだご覧でない方はこちらからどうぞ。

↓今回はサポートサイトの以下の記事を参考にしました。
仮想DB(連携型)とは

仮想DB連携型とは

仮想DB連携型は2つ以上のDBのフィールドを組み合わせて構成したものになります。例えば、サポートサイトの例を見るとわかりやすいです。
顧客対応履歴DBを作りたいとします。フィールドの構成は顧客IDや顧客担当者メールアドレス、対応内容、顧客組織などが必要になります。顧客IDや顧客担当者メールアドレス、対応内容は、顧客対応という「コト」に関するフィールドですが、顧客組織は店舗一覧や従業員一覧などのように「モノ」に関するフィールドなり異なる性質を持ちます。そのため、対応履歴のDB(コトに関するDB)と顧客のDB(モノに関するDB)を別々で用意して、これらを組み合わせ、顧客組織とその対応内容のデータを格納する顧客対応履歴DBを作る方法が適しています。

image.png

シーン想定

上段で述べた顧客対応履歴DBを想定します。カスタマーサポートを行う部署で、様々な会社からの問い合わせの対応に関するデータを格納するDBを作成します。
DB構成は、サポートサイトを参考にして同じものを作ってみます。

image.png

実装

DB連携

仮想DB連携型を作成する前準備として、DB連携を行います。(本当は前回行ったDB連携の設定をそのまま使いたかったのですが、色々あってシーン想定が違っているので二度手間にはなりますが復習だと思ってDB連携から進めます。)
まずは、連携させる二つの通常DBを作成します。それぞれのDB構成は以下の通りです。

  • 対応履歴DB(参照元DB)

image.png

(※注意点:顧客IDのフィールドは入力必須・重複不可としないようにして下さい。対応履歴を格納するというDBであり同じ顧客からの問い合わせが複数回くることも想定されるため。)

  • 顧客DB(マスタDB)
    image.png

(注意:こちらは顧客IDのフィールドを入力必須・重複不可としてください。顧客のデータをリスト的に管理するためのDBなので、顧客IDが重複して登録されると混乱するため。)

作成した二つのDBを連携させます。メニューの「DB」→「DB連携」を選択し、「新たにDBを連携する」のボタンをクリックします。前回行ったように、参照元DB一覧から対応履歴DB、参照キーとして顧客IDを選択し、マスタDB候補一覧から顧客DB、マスタキーとして顧客IDを選択します。

image.png

また、前回は間接連携を選びましたが、今回は参照キー、マスタキーとして顧客IDを使う(→変更が想定されない)ため、直接連携とします。

image.png

「以上の連携設定を新規作成する」のボタンをクリックすると下段に新たに設定が出てくるので以下のように設定します。

image.png


▽SPIRALのトライアルはこちらから!


仮想DB連携型の作成

DB連携の設定が完了したのでこれをもとに仮想DB連携型を作成します。メニューの「DB」→「仮想DB(連携型)」を選択し作成画面に移動します。「新たに仮想DBを作成する」のボタンをクリックし、先ほど設定した対応履歴DBと顧客DBのDB連携をチェックし、「新規に作成する」のボタンをクリックします。

image.png

仮想DB名、仮想DBタイトルを入力し、フィールド設定でDB構成を設定します。今回は、サポートサイトのDB構成を参考に、以下のようにDB構成を行います。

image.png

結合設定は、今回は内部結合を選択します。
以上で仮想DB連携型が作成できました。

動作確認

DBオペレーションで、マスタDBである顧客DBに以下のようにデータを登録します。
image.png

仮想DB連携型である顧客対応履歴DBにデータを登録します。
顧客IDのフィールドは「マスタを参照」ボタンをクリックすると、先ほど顧客DBに登録した顧客データの一覧が表示されるのでそこから選択します。顧客組織のフィールドに選択した顧客IDと連動した顧客組織の名前が反映されます。(ここではりんご株式会社)
他のフィールドも適切な内容を手動入力し、データを登録します。

image.png

同様に、以下のように複数対応履歴のデータを登録しました。

image.png

これを履歴DBで登録内容を確認します。顧客対応履歴DBに登録した内容が反映されていることがわかります。

image.png

まとめ

今回は仮想DB連携型に関する実装を行いました。DB連携における直接連携・間接連携、仮想DB連携型作成における内部結合・外部結合などの違いを理解しておく必要はありますが、これらを乗り越えて仮想DBを使いこなせるようになれば更なるデータの扱いの幅が広がりそうですね。次回は仮想DB集合型の実装に取り組みたいと思います!よろしくお願いします。


私がインターンしているスパイラル株式会社は、ローコードプラットフォーム、SPIRAL ver.1のトライアルアカウント無償提供しています。このアカウントの記事でも紹介するように、たくさんの機能ございます。

▶︎ フォーム

▶︎ 認証エリア

▶︎ ログイン

▶︎ メール送信

▶︎ カスタムプログラム

などの作成できますので、ぜひ試してみてください!!

そして、今チームでトライアル登録者向けに、オンボーディングコンテンツを作成しています。SPIRAL ver.1にご興味のある方、ぜひこちらもご覧ください👇

無料トライアル申込(入力)|お問い合わせ|スパイラル株式会社
スパイラルの無料トライアル利用お申し込み受付ページ。SPIRAL(スパイラル)はスパイラル株式会社がクラウド形式で提供するセキュアなデータベースを軸にしたソリューションプラットフォームです。様々な機能・アプリケーションの組み合わせも自由!ビジネスシーンにあわせた課題解決にご活用下さい。

0
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
0
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?