Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (日本語) » Mobile Link - クイック・スタート » Mobile Link チュートリアル » チュートリアル:Oracle 10g 統合データベースでの Mobile Link の使用

 

レッスン 1:スキーマの設計

このチュートリアルでは、OE (注文エントリ) と HR (人材) というサンプル・スキーマがインストールされていることを前提としています。OE スキーマは統合データベースとして使用します。このスキーマには従業員、注文、顧客、製品に関する情報がまとめられています。このチュートリアルでは、主に OE スキーマを使用します。ただし、各販売担当者に関する情報を取得する場合は、HR スキーマの EMPLOYEES テーブルを参照する必要があります。OE スキーマのテーブルのうち、このチュートリアルに関連するテーブルの概要を次に示します。

テーブル 説明
CUSTOMERS レコードに情報が記録されている顧客。
INVENTORIES 各倉庫に保管されている各製品の数量。
ORDER_ITEMS 各注文の対象となっている製品のリスト。
ORDERS 特定の日付に販売担当者と顧客の間で成立した販売の記録。
PRODUCT_DESCRIPTIONS 各製品に関する、各種言語での説明。
PRODUCT_INFORMATION システム内の各製品の記録。
リモート・スキーマの設計

まず最初に、リモート・スキーマを設計します。販売担当者ごとに統合データベース全体をコピーしておくことは不要であり、非効率的です。リモート・スキーマは、1 人の特定の販売担当者に関連する情報のみを格納するように設計します。そのため、リモート・スキーマは次のように設計します。

統合テーブル リモート・テーブル
CUSTOMERS すべての行を抽出。
INVENTORIES リモートでは使用しない。
ORDER_ITEMS sales_rep_id を基準にフィルタ処理。
ORDERS すべての行を抽出。
PRODUCT_DESCRIPTIONS リモートでは使用しない。
PRODUCT_INFORMATION すべての行を抽出。

各販売担当者はすべての顧客と製品の記録を保持し、すべての製品をどの顧客にも販売できるようにする必要があります。このチュートリアルでは、販売担当者は常に顧客と同じ言語を使用していることを前提としているため、PRODUCT_DESCRIPTIONS テーブルは必要ありません。各販売担当者には注文に関する情報が必要ですが、他の販売担当者に関する注文の情報は不要です。そのため、ローは販売担当者の識別子に基づいてフィルタされます。

次に、各テーブルの同期の方向を選択します。リモート・データベースで読み込む情報と、リモート・データベースで作成、変更、または削除する情報について考慮する必要があります。この例では、各販売担当者は製品と顧客のリストを必要としていますが、新しい製品の情報をシステムに入力することはありません。製品と顧客の情報の入力は必ず本社の統合データベースから行うという制限が設けられています。一方で、販売担当者は新しい販売情報を常時記録できる必要があります。このような理由から、各テーブルの同期については次のように決められています。

テーブル 同期
CUSTOMERS リモートへのダウンロードのみ。
ORDER_ITEMS ダウンロードとアップロード。
ORDER ダウンロードとアップロード。
PRODUCT_INFORMATION リモートへのダウンロードのみ。