リレーションシップの設定 LibreOffice Base

1.リレーションシップ

テーブル間の共通フィールドを 関連付けることを

 「リレーションシップを設定する」という


「プライマリキー」と「外部キー」


 2つのテーブル間に リレーションシップを設定するには
2つのテーブルに 共通のフィールド が 必要です

 共通のフィールドのうち 「プライマリキー」側のフィールドに対して
もう一方のフィールドは 「外部キー」 と言うそうです

 主キー を含む テーブルを  「主テーブル」
 外部キーを含むテーブルを 「関連テーブル」 または 「リレーションテーブル」という



参照整合性

リレーションシップが設定されたテーブル間で
矛盾のないデータ管理をするための規則を 「参照整合性」 という

 例えば
 担当者マスター側に存在しない 「担当者CD」 を 
得意先マスター側に 入力してしまうような データの矛盾 を 制御する



2.リレーションシップの設定

  商品マスターテーブル
  担当者マスターテーブル
  得意先マスターテーブル
  売上マスターテーブル
 この4つのテーブル間に リレーションシップ を 設定する
参考 : 売上管理f.odb  を クリック 一度 ダウンロード保存

1.保存した[売上管理f.odb]を 開く
  開いた時 [データベース]ペインでは 「フォーム」が選択されている状態
2.[データベース]ペインで 「クエリー」を選択

3.[タスク]ペインで 「デザイン表示でクエリーを作成」をクリック

4.[ Query Design ] (クエリーデザイン)が表示される

  [テーブルまたはクエリーの追加]画面で 「商品マスターテーブル」を選択
  [追加]をクリック

5.[ Query Design ] (クエリーデザイン)に 「商品マスターテーブル」が 追加される

6.「担当者マスターテーブル」・「得意先マスターテーブル」・「売上データテーブル」を 
それぞれ選択 それぞれ[追加]クリック [Query Design] に すべて追加・表示する
  [テーブルまたはクエリーの追加]画面は 閉じる

7.リレーションシップしやすいように 配置を変更したり
  中の項目がすべて見えるように サイズを大きくしたりする

8.「担当者マスターテーブル」の「担当者CD」フィールドを ドラッグし
「得意先マスターテーブル」の「担当者CD」フィールドの上に ドロップする

9.「担当者マスターテーブル」の「担当者CD」フィールドから
「得意先マスターテーブル」の「担当者CD」フィールドへ
  関連付けされたことを示す 接続線 が表示される

10.もう1つのリレーションの作成方法
  [挿入]→[新しいリレーション]クリック

11.[結合属性]画面が表示される

12.たとえば 
  [含まれるテーブル]欄
  「商品マスターテーブル」と「売上マスターテーブル」を選択
  [オプション]欄  
  [内部結合]
  [含まれるフィールド]欄
  「商品マスターテーブル」下の欄で「▼」をクリック
  「商品CD」を選択
  「売上マスターテーブル」下の欄で「▼」をクリック
  「商品CD」を選択
  [OK] クリック

13.関連付けされたことを示す 接続線 が表示される

14.最後に 「得意先マスターテーブル」と「売上マスターテーブル」の間にも リレーションを設定する
  好みの方法で 行ってください

15.これで 4つのテーブル間に リレーションシップが設定できた

これで Access のように リレーションシップだけ保存しようとしたが 
分らなかった il||li _| ̄|○il||li

そこで クエリー として 保存する
そのため 画面の下半分へ フィールドを追加する
作成するのは 「売上データクエリ」(売上Dクエリーとする)
項目は
 NO
 売上日
 得意先CD
 得意先名 
 担当者CD
 担当者名
 商品CD
 商品名
 単価
 数量 
 金額 (単価×数量)
 追加の方法は 上のテーブルにあるフィールドを ダブルクリックする
 最後の「金額」は 上のテーブルには無いので 直接入力する
 1.フィールド欄に 単価*数量  ( * は 半角 )と入力

 2.[Enter] を押す
   "単価"*"数量" となる

 3.エイリアス欄に 金額  と入力する

これで 「売上Dクエリー」が 出来たので 保存する
  クリック

[名前を付けて保存]画面 「売上Dクエリー」と入力

確認してみる
「売上Dクエリー」を ダブルクリック

Table Data View(テーブルデータビュー)が表示される

並び順が 担当者CDになっている&単価と金額を 通貨表示にしたい
通貨表示は 以前行ったので簡単に
 [単価]を右クリック [列の書式]選択 
 [フィールドの書式設定]で 分類「通貨」[OK] クリック
 [金額]も同様
並び替えは [NO]をクリック(選択)
ツールバーの 「昇順に並び替え」  を クリック

結果


参考 : 売上管理g.odb 


LibreOffice Base についての記事 一覧
※ Base を 使う場合は LibreOffice 3.3.3 の方が良い 3.4.1・3.4.2 は 不具合がある
 B1B2B3B4B5B6B7B8B9B10
 B11B12B13B14B15B16B17B18B19B20
 B21B22B23B24B25B26B27B28B29B30
 B31B32B33B34B35B36B37B38B39B40B41


リンクのファイルについて                               
ブログ内容は、その日付の時点での情報に基づいています           
ブログにアップした後に、変わる情報もありますのでご注意ください 最新記事
質問・苦情・要望などあるようでしたら、下の コメント をクリックして入力して下さい
自分のやり方などは ご自分のHP・ブログで表現して下さい
2013年12月17日にこのブログは閉鎖になります

コメント

コメントの投稿

管理者にだけ表示を許可する

« Base  テーブル 8-2 LibreOffice Base  | HOME |  クエリー( query )    LibreOffice Base »

PAGE TOP ▲

Calender

« | 2013-11 | »
S M T W T F S
- - - - - 1 2
3 4 5 6 7 8 9
10 11 12 13 14 15 16
17 18 19 20 21 22 23
24 25 26 27 28 29 30

クリック募金

OpenOffice.org 記事一覧

LibreOffice日本語HP

ダウンロードも ここからできます

LibreOffice 記事一覧 1

LibreOffice 記事一覧 2

LibreOfficeForum.org

LibreOfficeForum トピック作成

Kingsoft Office 記事一覧

ヴァイオリニスト松尾依里佳


ヴァイオリニスト松尾依里佳

カウンター

Search

Appendix

ブラックジャックによろしく
DTIブログ
ブログでアフィリエイト
DTIブログポータルへ
このブログを通報
Report Abuse
/