67
1

OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

  • Upload
    others

  • View
    6

  • Download
    0

Embed Size (px)

Citation preview

Page 1: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

1

Page 2: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

2

OpenOffice.org Baseとは? ................................................................................................................................. 3

Base データベースファイル sampleDB070.odb をダウンロードする。 ........................................................... 3

Base データベースを登録する。 ........................................................................................................................ 10

Base クエリーと SQL文は表裏一体。 ............................................................................................................... 14

Baseから Accessのデータベースに接続する方法。 .......................................................................................... 21

Base フィールドとレコードについて。 ............................................................................................................. 30

Base デザイン画面でクエリーを作成する方法。 .............................................................................................. 31

Base クエリーで性別を表示する方法。 ............................................................................................................. 51

Page 3: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

3

http://base.officehp.com/

OpenOffice.org Baseとは?

Base は統合オフィスソフトである OpenOffice.org や StarSuite に含まれている、データベ

ースソフトです。この二つに含まれている Base は同じです。

Base は Microsoft Office の Access のようなデータベースソフトです。テーブル、クエリー、

フォーム、レポート、マクロなど、データベースソフトとして必要な機能は、一通りそろっていま

す。

Access はとても操作性が優れたデータベースソフトで、解説書が多く情報が豊富です。しかし

Access は新製品が出ると、買い換えるか、有料でアップグレードしなければなりません。またイ

ンストールできるユーザー数に制限があったりもします。

Base を使う最大のメリットは、何といってもオープンソースソフトウェアであることです。Base

は誰でもインターネットから無償で入手できます。また日々開発が続けられているので、無償で更

新することが可能です。

Access を使い慣れた人が、初めて Base を使うと、操作性や機能に満足できないかもしれませ

んが、これからどんどん改良されていくと思います。

Access と Base の機能的な大きな違いは、Access がデータベース機能自体を持っているのに対

し、Base にはデータベース機能自体は無いことです。

Base は 標準で HSQLDB というデータベースを利用します。そのため Base にデータベース機

能が付いているように感じますが、あくまでデータベースのフロントエンド(クライアントまたは

窓口)なのです。

HSQLDB は利用できるデータベースの 1つであり、同じように Access、MySQL、PostgreSQL

など、他のデータベースに接続することもできます。

Base データベースファイル sampleDB070.odb をダウンロードする。

この講座は OpenOffice.org 初心者入門講座 の続編という位置付けです。まだの方は先にそちら

をご覧ください。 OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い

方を掲載しています。

今回は Base の学習用に、データベースファイルを用意したので、ダウンロードしてください。

全国の郵便番号や住所が入っています。

動作確認は OpenOffice.org か StarSuite のどちらの Base でもかまいません。

【1】 sampleDB070.zip をダウンロードします。

Page 4: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

4

*ファイルは圧縮されているので、解凍してください。

【2】ファイルを解凍すると「sampleDB070.odb」があります。

【3】Base を起動して、「sampleDB070.odb」を開き、テーブルを表示します。

すでに 8つのテーブルが作成済みで、データが入っています。

【4】クエリー、フォーム、レポートには以下のファイルが作成済みです。

Page 5: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

5

・Q01Prefecture

・F01PrefectureASC

・R01PrefectureASC

これらは OpenOffice.org 初心者入門講座 で作成したものと同じです。詳しくはそちらをご覧く

ださい。

【5】各テーブルのデザインとレコードを確認してください。

・テーブルデザインを確認する方法

・レコードを確認する方法

Page 6: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

6

*T03Town はレコード数が 12万件以上あるので、表示にかなり時間がかかります。気長にお待

ちください。

Baseと Accessでフィールドのデータ型を比較する。

【6】データを確認したら、データベースを閉じてください。

【ワンポイント】

テーブル T03Town のようにレコード数が多くなると、データベースが HSQLDB の場合、処理

に時間がかかるようです。

まったく同じものを、データベースを Access にして、 Base からリンクした場合は、それほど

時間がかかりません。

したがって Base が遅いというわけではなく、 HSQLDB 側で時間がかかっているようです。

大量のレコードを扱うシステムの場合は、データベースを MySQL などにして、Base はデータ

ベースのフロントエンドとして使うほうが効率がよさそうです。

前回ダウンロードした Base のデータベースファイル sampleDB070.odb は、元々 Access の

Page 7: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

7

データだったものを、 Base にインポートしたものです。

テーブルのデザイン(構造)は、インポートの時に自動的に設定されるため、Base ではフィールド

の並び順がバラバラです。

Access の並び順の方がわかりやすいですね。でも今の段階では気にしないでください。表示順は

あとからクエリーでいくらでも加工できます。

Access はテーブルにレコードを入力した後でも、簡単にフィールドの順番を入れ替えることがで

きますが、Base はできないようなので、そのままにしました。

(1)Access では「データ型」と言いますが、Base では「フィールドの種類」と言います。

(2)Access のデータ型 に対応する HSQLDB のフィールドの種類

今回のデータベースで使っているのは、以下の型だけです。

整数型 = 整数[INTEGER]

テキスト型 = テキスト[VARCHAR]

通貨型 = 数値[NUMRIC]

日付/時刻型 = 日付/時刻[TIMESTAMP]

Page 8: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

8

フィールドの種類は他にもいろいろありますが、必要なときに説明します。

(3)Accessのオートナンバー型に相当する機能は

・Access

Base ではフィールドの種類を 整数[INTEGER] にした後、「自動入力値」を「はい」に設定する

ことで可能です。

・Base

【ワンポイント】

「HSQLDB のフィールドの種類」と書いたのは、Base では使うデータベースによって種類が変

わるからです。

・Base から標準の HSQLDB を使った場合

Page 9: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

9

・Base からリンクで Access を使った場合

フィールドの種類をよく見ると違うことがわかります。

Page 10: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

10

Base データベースを登録する。

Base でデータベースウィザードを使って、新しいデータベースを作成した時には、

OpenOffice.org(または StarSuite) への「データベースの登録」は自動的に行われます。

しかし既存の odbファイル をダウンロードして入手した場合などは、データベースを手動で登録

する必要があります。

データベースの登録は、Base 起動後にメニューの「ツール → オプション」から設定することが

できます。

OpenOffice.org にデータベースを登録すると、OpenOffice.org の Calc や Writer からデー

タベースを参照することができます。この機能を「データソース」と言います。

データソースを使うと、データベースのデータを Calc や Writer へ挿入したり、差し込み印刷す

ることができるので便利です。

データベースを登録しなくても、 odbファイル は使うことができますが、他のアプリケーション

と連携できると用途が広がるので、手順を説明しておきます。

【1】Base を起動して、「sampleDB070.odb」を開きます。

* Calc や Writer からも登録できます。

Page 11: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

11

【2】メニューから「ツール → オプション」を選択します。

【3】ダイアログボックスが表示されたら、「OpenOffice.org Base」(または StarSuite)から「デ

ータベース」を選択すると、登録されたデータベースの管理が行なえます。

Page 12: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

12

【4】新しくデータベースを登録する時は、「新規作成」ボタンをクリックします。

【5】「検索」ボタンでデータベースファイルを指定します。「登録名」が自動的に表示されるので、

「OK」ボタンをクリックします。

【6】「sampleDB070」が登録されました。

Page 13: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

13

ファイルの場所や登録名を変更したい時には、このダイアログボックスの「編集」で行なえます。

また登録を「削除」しても、 odbファイル自体は削除されませんので安心してください。

【7】データベースを登録すると「データソース」から利用できるようになります。

・Calc の例

Page 14: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

14

テーブルのデータを挿入した様子

テーブルだけでなく、クエリーのデータも利用できます。またデータソース画面で、データベース

上のデータを追加したり、更新することもできます。

Base クエリーと SQL文は表裏一体。

Base にはクエリーという機能があります。クエリー(query)はデータベース管理システムに対し

て、問い合わせ(検索、追加、更新、削除など)を行ないます。

Base や Access などのデータベースアプリケーションでは、GUI で視覚的に作成したクエリー

を保存しておいて、何度でも実行することができます。

クエリーをデザインすると、SQL(Structured Query Language)文が自動的に作成されます。逆

に SQL 文でクエリーをデザインすることもできます。この二つの関係は密接で切り離せないもの

です。

【1】Base を起動して、「sampleDB070.odb」を開きます。

Page 15: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

15

【2】クエリーを開くと、「Q01Prefecture」が作成済みです。

Page 16: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

16

この Q01Prefecture は OpenOffice.org 初心者入門講座 で作成したものです。作り方はそち

らをご覧ください。

これからクエリーを編集しますが、保存はしないでください。

【3】「Q01Prefecture」を選択し、「編集」ボタンをクリックします。

【4】クエリーのデザインビュー(画面)が表示されました。「並べ替え」が「昇順」になっているこ

とを覚えておいてください。

Page 17: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

17

*昇順なので「1 北海道 → 47 沖縄」の順になります。

【5】「デザインビューのオン / オフ切り換え」ボタンをクリックします。

Page 18: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

18

【6】SQL文が表示されました。

デザインビューでクエリーを視覚的に作成すると、裏方で SQL文が自動的に作成されます。

【7】SQL文の最後を ASC から DESC に変更します。

*DESCは降順という意味

【8】もう一度「デザインビューのオン / オフ切り換え」ボタンをクリックします。

Page 19: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

19

【9】クエリーのデザイン画面に戻りました。「並べ替え」が「降順」に変わっています。

SQL文を直接書くと、それがデザインビューに反映されます。つまりクエリーと SQL文は表裏一

体なのです。

【10】「クエリーの実行」ボタンをクリックします。

Page 20: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

20

【11】降順に設定したので「47 沖縄 → 1 北海道」の順になりました。

【12】確認したら、クエリーを閉じてください。

Page 21: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

21

【13】変更は保存しないので、「いいえ」ボタンをクリックします。

Base や Access などで完結するシステムを作る場合は、クエリーをデザインするだけで済みま

す。SQL文の知識は必ずしも必要ではありません。

しかし Java や PHP など、他のプログラミング言語からデータベースを操作する場合は、プログ

ラムの中で SQL文を組み立てて発行します。そのため SQL文の知識が必要になってきます。

今の段階では、SQL 文の詳しい意味はわからなくてもよいのですが、クエリーをデザインする時

に、どんな SQL文が作成されているか見る習慣を付けてください。あとできっと役立ちます。

Baseから Accessのデータベースに接続する方法。

Base はデータベースのフロントエンド(クライアントまたは窓口)なので、標準の HSQLDB 以

外のデータベースにも接続することができます。

今回は Access のデータベースに接続しますが、MySQL や Oracle などに接続する手順もほと

んど同じなので、参考にしてください。

Page 22: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

22

Base には Access 用のドライバが最初から用意されているので、簡単な手順で接続できます。

【1】 SampleDB071.zip をダウンロードします。

*ファイルは圧縮されているので、解凍してください。

【2】ファイルを解凍すると「SampleDB071.mdb」があります。これは Access のファイルで

す。

【3】Base を起動します。

【4】「データベースウィザード」が表示されました。

Page 23: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

23

【5】「既存のデータベースに接続」をチェックし、「Microsoft Access」を選択したら、「次へ」

ボタンをクリックします。

Page 24: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

24

【6】「ブラウズ」ボタンをクリックして、解凍した Access のファイル「SampleDB071.mdb」

を指定し、「次へ」ボタンをクリックします。

*解凍した場所により表示が異なります。

【7】そのまま「完了」ボタンをクリックします。

Page 25: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

25

【8】保存する場所を選択して、ファイル名に「AccessLink.odb」と入力し、「保存」ボタンをク

リックします。

Page 26: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

26

【9】AccessLink.odbが表示されました。

【10】テーブルを見ると、Access のテーブルとクエリーが表示されています。

Page 27: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

27

これはリンクした状態なので、Base 側でデータを変更すると、Access 側(SampleDB071.mdb)

のデータも変わります。クエリーは表示だけで、編集したりすることはできません。

またリンクしたテーブルから、クエリー、フォーム、レポートを新規作成することができます。

【11】テーブル「T03Town」を開いてください。

Page 28: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

28

【12】最後のレコードを表示するまでの時間を、 HSQLDB の場合(sampleDB070.odb)と比べ

てみてください。

Page 29: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

29

接続しているデータベースによって、スピードが違うことが実感できると思います。

【13】テーブル「T03Town」を編集で開くと、フィールドの種類が HSQLDB の時と違うことが

わかります。

Page 30: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

30

あとは「AccessLink.odb」からいつでも開くことができます。

Base がデータベースのフロントエンドだということが、実感できたのではないでしょうか。

今回は Access に接続したので、あまりメリットを感じないかもしれません。Access 自体にも

クエリー、フォーム、レポートを作成する機能があるからです。

しかし Base を MySQL のフロントエンドとして使うと、一般ユーザーが利用するシステムを簡

単に作ったり、プログラマーが開発の時に MySQL のデータを簡単に扱えるので、とてもメリッ

トがあります。

MySQL については MySQL初心者入門講座 をご覧ください。

【ワンポイント】

Accessへは「ODBC」でも接続できます。

また接続するデータベースによっては、インストールはもちろん、専用の ODBC ドライバを用意

しておく必要があります。

Base フィールドとレコードについて。

Base、Access、Oracle、SQL Server、MySQL、PostgreSQL などはリレーショナルデータベ

ース管理システム(RDBMS)です。

現在もっともよく利用されているリレーショナルデータベースでは、データは表のような構造で管

理されています。表計算ソフトの行や列と似ているので、何となく分かるのではないでしょうか。

Page 31: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

31

データベースで使う用語は、解説書によって呼び方に違いがあります。Base で初めてデータベー

スを学ぶ初心者のために、最も基本的なことをまとめておきます。

データベースでは、上記のような表を「テーブル」といいます。フィールドは「列」とか「column」

といい、レコードは「行」とか「row」と言うことがあります。

・フィールド 列 column

・レコード 行 row

フィールド(列)には、同じ種類のデータが入ります。また 1つのレコードで、1件のデータを表し

ます。

例えば顧客マスターのテーブルでは、顧客名のフィールドには必ず文字列が入り、数字や日付が入

ることはありません。そして 1件のレコードは顧客 1人分のデータになるということです。

Base デザイン画面でクエリーを作成する方法。

Base には視覚的にクエリーを作成する機能があります。SQL 文がわからなくても、マウスでド

ラッグ&ドロップするだけで、自由自在にクエリーが作成できます。

OpenOffice.org 初心者入門講座 で最も基本的なクエリーの作り方(Q01Prefecture)は解説しま

したので、今回はその続きになります。まだの方は先にそちらをご覧ください。

今回は 2 つのテーブルを共通のフィールドで関連付けて、まるで 1 つのテーブルのように表示す

る方法を解説します。これがリレーショナルデータベースでクエリーを活用する基本となります。

クエリーがわかれば、Base はわかります。

【1】Base を起動して、「sampleDB070.odb」を開きます。

Page 32: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

32

【2】クエリーを表示します。

Page 33: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

33

【3】「デザイン表示でクエリーを作成」をクリックします。

【4】「テーブルまたはクエリーの追加」ダイアログボックスで、「表」を選択すると、テーブルの

一覧が表示されます。

【5】「クエリー」を選択すると、クエリーの一覧が表示されます。

Page 34: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

34

【6】「表」を選択し、「T02City」を選択したら、「追加」ボタンをクリックします。

【7】「閉じる」ボタンをクリックします。

Page 35: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

35

【8】クエリーデザイン画面に、「T02City」が追加されました。

【9】「CITY_CD」をダブルクリックします。

Page 36: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

36

【10】「CITY_CD」が画面下に選択されました。

【11】同様に「CITY_NAME」、「PREF_CD」を選択します。

Page 37: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

37

【12】「クエリーの実行」ボタンをクリックします。

【13】クエリーの実行結果が表示されました。

Page 38: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

38

しかし都道府県名は表示されていません。有名な都市ならわかりますが、日本全国には市町村が

1900以上あります。都道府県も一緒に表示されていたほうがわかりやすいです。

そこで次は都道府県も表示してみましょう。

【14】メニューから「表示 → プレビュー」を選択します。

Page 39: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

39

【15】クエリーデザイン画面に戻りました。

Page 40: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

40

*この戻る操作を覚えてください。

【16】「テーブルまたはクエリーの追加」ボタンをクリックします。

Page 41: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

41

【17】ダイアログボックスで、「T01Prefecture」を追加します。

【18】クエリーデザイン画面に「T01Prefecture」が追加されました。

Page 42: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

42

【19】マウスで T02City の「PREF_CD」を、T01Prefecture の「PREF_CD」にドラッグ&ド

ロップします。

Page 43: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

43

*逆でも同じです。

【20】テーブル同士が「PREF_CD」で関連付けられました。

Page 44: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

44

【21】T01Prefecture の「PREF_NAME」をダブルクリックして選択します。

Page 45: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

45

【22】「クエリーの実行」ボタンをクリックします。

【23】今度は都道府県名が表示されました。

Page 46: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

46

【24】他の都道府県も表示されているか確認してください。

Page 47: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

47

ここまでの作業を保存しましょう。

【25】「保存」ボタンをクリックします。

【26】クエリー名に「Q02City」と入力し、「OK」ボタンをクリックします。

【27】クエリーのタイトルが変わりました。

Page 48: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

48

【28】保存したらクエリーは閉じてください。

【29】データベースファイルウィンドウに「Q02City」が表示されています。

Page 49: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

49

【30】作成したクエリーは、クエリーを実行したり、編集、削除することができます。

Page 50: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

50

【31】復習を兼ねて、「Q02City」を編集で開き、CITY_CD の並べ替えを「昇順」に設定してく

ださい。

設定したら保存します。

【解説】

(1) PREF_CD は両方のテーブルにありますが、必ず T02City 側の PREF_CD を選択します。

これはとても重要なポイントです。クエリー Q02City の主役となるテーブルは、 T02City です。

しかし T02City だけでは都道府県名が表示できないので、T01Prefecture を追加しました。つ

まり T01Prefecture は脇役です。

もし T01Prefecture 側の PREF_CD を選択した場合、このクエリーから作成したフォームでは、

データが入力できないなどの不具合の原因となります。

(2)クエリーを使うと、フィールドの並び順は自由に入れ替えることができます。また目的のフィ

ールドだけを選んで表示することができます。

(3)クエリーを使うと、複数のテーブルを関連付けて、まるで一つのテーブルのように、データを

Page 51: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

51

表示することができます。

(4)レコードは必ずしも番号順に表示されるとは限りませんので、並べ替えを設定するようにして

ください。

【ワンポイント】

余裕のある方は、今回のようなクエリーをデザインした場合、どのような SQL 文ができるのか見

てください。今は SQL文の意味がわからなくても結構です。SQL文を見慣れることが大事です。

Base クエリーで性別を表示する方法。

・「T04Customer」(顧客マスター)には、性別に関する番号が保存されています。

・「T05Sex」(性別マスター)には、番号と「男」「女」という文字が保存されています。

Page 52: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

52

この顧客マスターと性別マスターを関連付けることで、顧客マスターに文字で性別を表示すること

ができます。

要領はクエリ Q02City で都道府県名を表示した時と同じです。

【1】Base を起動して、「sampleDB070.odb」を開きます。

Page 53: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

53

【2】クエリーを表示します。

Page 54: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

54

【3】「デザイン表示でクエリーを作成」をクリックします。

【4】テーブル「T04Customer」(顧客マスター)を追加してください。

Page 55: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

55

【5】以下の図の順番でフィールドを選択します。

Page 56: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

56

【6】「クエリーの実行」ボタンをクリックします。

Page 57: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

57

【7】クエリーの実行結果が表示されました。

しかしこれでは性別が分かり難いです。性別を文字で表示するように、クエリーのデザインを変更

します。

クエリーのデザイン画面に戻します。

【8】メニューから「表示 → プレビュー」をクリックします。

Page 58: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

58

*プレビューのチェックを外す

【9】「テーブルまたはクエリーの追加」ボタンをクリックします。

Page 59: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

59

【10】テーブル「T05Sex」(性別マスター)を追加してください。

Page 60: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

60

【11】マウスで ドラッグ&ドロップ して、「SEX_CD」同士をつなげます。

Page 61: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

61

【12】以下の図のようにフィールドを選択してください。

Page 62: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

62

フィールドの順番は、簡単に入れ替えることができます。

【13】フィールド上部をマウスで ドラッグ&ドロップ すると移動できます。

【14】フィールドが移動しました。

Page 63: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

63

クエリーのデザイン画面でフィールドを移動する方法は、よく使いますので覚えてください。

【15】ついでに「CST_CD」の並べ替えを「昇順」にします。

Page 64: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

64

*レコードは番号順に表示されるとは限らないため

【16】クエリーを実行すると、性別が文字で表示できました。

Page 65: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

65

このほうがわかりやすいですね。

ここまでの作業を保存しましょう。

【17】「保存」ボタンをクリックします。

Page 66: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

66

【18】クエリー名に「Q04Customer」と入力し、「OK」ボタンをクリックします。

【19】保存したらクエリーは閉じてください。

【20】データベースファイルウィンドウに、「Q04Customer」が表示されています。

Page 67: OpenOffice.org Base sampleDB070 - sskpc.netsskpc.net/Soft/OOo_60_Base_300_2.pdf · OpenOffice.org や StarSuite のインストールから、 Base の基本的な使い 方を掲載しています。

67

【ワンポイント】

今回のクエリーは、以下のような SQL文になります。