Microsoft Access でデータ管理を学ぶ、テーブルとリレーションシップ

アクセス Access
アクセス

きょうは Access でデータ管理を学びます。

データを目的ごとに分類し、相互に関連付けたもの(リレーショナブル・データベース)で「売上データ」を作ります。

データベース機能とは、「商品台帳」「顧客台帳」などのデータを管理・運用する機能のことです。エクセルもデータベース機能をもっていますがどこがどうちがうのでしょうか?

きょうはあなたと、Access でデータ管理を学習したいと思います。

1.こんなとき Excel Access どちらを使う?

Excel と Access の違い
Excel と Access の違い
taka
taka

手際よく仕事をするには実践しかありません。

仕事の手を休めて、机上の灯りにうつつに目をやり、うんざりして疲れ果てて眠ってしまうってことありませんか?

多くの人が、顧客名簿の管理や販売履歴の集計に「エクセル」を使っています。でも、実際は「アクセス」の方が便利なのでは、と思ったことありませんか?

Excel データベースでは表が大きくなればなるほど、いちいち時間がかかってしまいます。大きくなればそれだけサイズも大きくなるのでもっともといえばもっともです。

しかし、Access はもともと大量のデータを扱うので軽快に扱えます。これらの仕事は、データベースソフトであるアクセスの”得意分野”。両者を比較すると、シーン別の最適な”使い分け”が見えてきます。

アクセスは難しそうで・・・と思うかもしれませんが、いくつかの基本ルールを覚えれば大丈夫。エクセルのファイルからアクセスのデータベースを作る方法もあります。いざ、挑戦してみましょう!

1.データ管理

日常の業務の中で、得意先の住所や電話番号を一覧表にして「顧客名簿」を作ったり、商品の「注文書」をまとめて集計する「データ管理」をすることが多いと思います。ほとんどの人は、これらの業務に「エクセル」を利用しています。メニューなどから簡単に操作できるのがエクセルのわかりやすさだからです。

一方、データ管理といえば「アクセス」の”本領”です。「顧客名簿」も「注文書」も、すべて1つのデータベースで管理できるのがアクセスの長所です。しかも、データを追加したり、集計・検索する作業を、独自に作成した画面で行えます。自分の仕事に合わせて、使いやすく必要に応じて設定できるからです。

「データ入力」については、顧客や商品の情報を1件ずつ入力するには差がないですが、「いつ、誰が、何を買ったか」という販売データ入力になると、アクセスの「フォーム」が便利です。顧客の住所や商品の写真も表示する画面を作れるので、入力ミスを減らせます。

データの「集計・検索」は、どちらの機能も甲乙つけがたいですが、「ある条件で検索したデータに対して集計する」といった”組み合わせ”になると、エクセルの手順は複雑ですが、アクセスなら簡単です。また、アクセスの「レポート」を使えば、エクセルではワードの助けが必要な「差し込み印刷」もできてしまいます。

Excel と Access の違い
Excel と Access の違い

2.Access と Excel どちらにも似たような機能がある

しかし海の底の孤独な丸石のように堅く凍えています。この石が数点ころがっているだけなら探すのは簡単です。しかし数万点ころがっていればどこにどんな石があるのか見つけるのが困難です。

  • 住所録のように Excel のワークシート1枚ですべて管理できるのもあれば、何千件にも及ぶデータでは Access では複数の表で管理できるので便利です。
  • Excel では複数の表の関連づけは、「VLOOKUP 関数」で他の表との関連付けを手動で設定しますが、Access では「リレーションシップ」機能で、自動的に複数の表が参照できます。
  • Excel では、写真入りのデータベースは「データフォーム」に表示できませんが、Access ではできます。

表はエクセルとそれほどかわりませんが、左側に「テーブル」が表示されます。アクセスは「テーブル」「クエリ」「フォーム」「レポート」があります。これらを「オブジェクト」と呼びます。

オブジェクトの種類と役割
オブジェクトの種類と役割

3.テーブル

テーブル
テーブル

Access は《テーブル》にデータを格納します。名前、住所、生年月日などの項目が必要という際に作るところで、アクセスの土台です。Excel のワークシートと同じような役割です。ただしテーブルはデータを保存するだけで、Excel のように計算式を入力したりしません。

4.クエリ

クエリ
クエリ

《クエリ》とは「問い合わせ」のことです。クエリ本体はデータをもっていないので、テーブルのデータが変更されるとクエリの結果も変更されます。

特定の条件に該当するデータだけを取り出すのが《クエリ》です。データをさまざまに加工します。「最近半年の売り上げ金額を、顧客ごとに集計する」といった作業も、クエリなら簡単にできます。見た目が《テーブル》のように見えますが《クエリ》はデータ抽出や計算で使用します。

5.フォーム

グローブ
グローブ

その情報を入力していくのが《フォーム》です。データを必要に応じて集計したり、検索する役割です。毎日使うデータ入力画面を、自分の仕事に合わせて作成できます。《フォーム》では、日本語システムの《ON/OFF》を切り替え設定できます。

6.レポート

レポート
レポート

これらを印刷するときのためにきれいに配置するのが《レポート》です。ハガキの「差し込み印刷」もできます。エクセルでは行や列が隠れているのに気づかず印刷してしまうことがありますが、Access
のレポートは、印刷用の画面なのでそのようなことは起こりません。

テーブル同士は関連付けることができ、入力できます。なお、アクセスのデータベースを作るには、アクセスを起動した後、まず初めにファイルを保存しなければなりません。これがエクセルとの違いです。

起動した画面で「空のデータベース」を選び、ファイル名や保存場所を決めます。

2.アクセスを使ってみよう

知っておきたいアクセスの基本
知っておきたいアクセスの基本

エクセルは、ソフトを起動すると表示される「ワークシート」にすぐデータを入力して使えますが、アクセスはそうではありません。

Access を使用するための一般的な手順です。

  1. Accessを開始する Access をインストールし、コンピュータにアクセスできる場合、”スタート”ボタンをクリックし、アプリケーション一覧から “Access” を選択します。
  2. データベースを作成する Access を開いたら、”ファイル”メニューから”新規”を選択して、新しいデータベースを作成します。データベース名と保存先を指定します。
  3. テーブルを作成する 新しいデータベースを作成したら、”テーブル”を作成します。”テーブル”タブをクリックし、必要なフィールドを追加します。フィールドには、データの種類、フィールド名、およびデータの制約を指定できます。
  4. データを入力する テーブルを作成したら、データを入力します。”テーブル”タブを選択し、新しいレコードを追加します。または、Excel からデータをインポートすることもできます。
  5. クエリを作成する データを入力したら、クエリを作成して、データを取得します。”クエリ”タブをクリックし、必要なテーブルを選択します。条件やソートの設定を行い、クエリを実行してデータを取得します。
  6. フォームを作成する データベースにデータを入力する場合、フォームを作成すると便利です。”フォーム”タブをクリックし、必要なフィールドを選択します。フォームを作成すると、ユーザーがデータを簡単に入力できるようになります。
  7. レポートを作成する データベースのデータを分析する場合、レポートを作成すると便利です。”レポート”タブをクリックし、必要なフィールドを選択します。レポートを作成すると、データの概要や詳細を表示できます。

これらは一般的な手順であり、Access の基本的な使い方です。ただし、Access は機能が豊富であるため、さまざまな機能があります。必要に応じて、Access の公式ドキュメントを参照することをお勧めします。

アクセスはまず、データを蓄積するための「テーブル」を設計する必要があります。ファイル名や保存場所を決めます。

データベース作成
データベース作成

アクセスは、データを蓄積するための「テーブル」を作らなくてはなりませんが、そのデータから必要な情報を抜き出すのは、テーブルとは別の「クエリ機能」です。アクセスは、4つのオブジェクト(もの)に分かれています。

  1. そのうち土台になるのが、データを入れる「テーブル」です。
  2. データを必要に応じて集計・検索するのが「クエリ」
  3. データの入力画面を、仕事に合わせて作成するのが「フォーム」
  4. 印刷をするのが「レポート」

「スポーツ用品の販売」データベースでは、得意先の情報を管理する「得意先台帳」
商品の情報を管理する「商品台帳」
販売の履歴を管理する「販売データ」を作ります。

3.アクセスデータベースを作成

Access の画面
Access の画面

エクセルは、ソフトを起動すると表示される「ワークシート」にすぐデータを入力して使えますが、アクセスはそうではありません。

《空のデータベース》から《作成》ボタンを押します。

新しい空のデータベースファイルが作成され《データベース》ウィンドウが表示されます。

最初に《テーブル1》というテーブルが自動的に表示され、《ID》というフィールドができています。これがスタートラインになります。通常、フィールドの作成はビューを切り替えて《デザインビュー》という画面から行います。

①《表示》をクリック、
②《名前を付けて保存》ダイアログボックスが開くので《得意先》と入力し《OK》を押す。

フィールドを作る
フィールドを作る

4.アクセスフィールドを作る

フィールドを作る
フィールドを作る

①1行目の《フィールド名》の《ID》の文字列が反転しているので《得意先ID》と入力し直して《Enter》を押します。

②《データ型》が設定されていますが、そのままでいいので《Enter》を押します。

③続いて《得意先名》《フリガナ》《郵便番号》《住所1》と入力します。《短いテキスト》と自動的に設定されます。《郵便番号》だけは▼から《数値型》ではなく《短いテキスト》のまま《定型入力》の▼から《郵便番号》から《次へ》→《次へ》→《データの保存方法》から《完了》を押します。

郵便番号が入力可能に
郵便番号が入力可能に

④フィールドの登録が終わったので、これまでの操作を保存します。《ホーム》から《上書き保存》をクリックします。

一度、フィールド名を入力すると、その後はフィールド名を削除しても、データ型だけが残ってしまう場合があります。そのまま保存すると「フィールド名が指定されていません」というエラーがでます。この場合は、フィールド名に《あ》と入力します。他の文字でもいいです。

そのあとで《行の削除》ボタンで1行丸ごと削除します。

1.フィールドプロパティ

定型入力(共通)

たとえば郵便番号はハイフンをつけることがルール化されています。「表示」→「デザインビュー」へ、「郵便番号」を選択したうえで、下の「フィールドプロパティ」から「定型入力」にカーソルを合わせると右のほうに「オプション」が出てきます。

このオプションをクリックすると、「定型入力ウィザード」で「郵便番号」を押します。するとハイフンを含めるのか含めないのか問われますので、ハイフンを含めて選択します。「完了」をおしてデータ入力バーに戻ると、郵便番号を入力する欄に「-」が前もって入力されているのがわかります。

自動的にハイフンを入れた形で表示してくれるようになります。

住所入力支援(テキスト型)

デザインビューから《住所入力支援》にカーソルを合わせてオプションを押すと、まず「郵便番号」を選び、「都道府県と住所の2分類」を選び、「都道府県」「住所」を選びます。「完了」をクリックします。デザインビューから郵便番号を入力すると自動的に住所を入力してくれます。

《ふりがな》の自動入力を行う機能もあります。

①「得意先名」テーブルの画面を《デザインビュー》に切り替えます。
②《得意先名》をクリックし、フィールドプロパティの《ふりがな》プロパティをクリックして、右端に表示される《…》ボタンをクリックします。

③《ふりがなウィザード》が始まります。ふりがなの自動入力先を設定します。ここでは「ふりがなの入力先」を《既存のフィールドを使用する》にして、一覧から《ふりがな》を選択します。
④「ふりがなの文字種」を《半角ヒラガナ》にして《完了》をクリックします。

ふりがな
ふりがな

入力規則(共通)

デザインビューから「生年月日」にカーソルを合わせて「入力規則」で規制するのです。

2.テーブルウィンドウのビュー

主キー/レコード/フィールド
主キー/レコード/フィールド

《主キー》とは管理用の”背番号”のことです。他とダブることがない値です。免許証やクレジットカードのようなものですね。中には、主キーになる項目が含まれていないことがあります。そのときは《オートナンバー》という、自動的に重複しない番号をつけてくれる機能があります。

《レコード》とは1件のデータ。
《フィールド》とはデータの項目。

「得意先台帳」では1人の顧客が1件のレコードになります。「住所」や「電話番号」などの項目はフィールドです。また、管理のために「主キー」を使います。

「フィールド名」に「得意先名」を入力し、「データ型」をクリックすると、短いテキスト、長いテキスト・・・さまざまな型を選択できます。なお郵便番号は「短いテキスト型」、生年月日は「日付/時刻型」です。

それでは入力していきます。生年月日は横にカレンダーがあるのでそこから選んでいきます。DM
送付に関しては「Yes/No型」なのでチェックボックスがつきます。

「表示」のとなりに「主キー」があります。これは「オートナンバー型」だと入力した際に自動的に
No を打ってくれるものです。

3.テーブルの新規作成

テーブルを新規に作成するには、3つの方法があります。

まず、見出しを入力していきます。メニューバーの「フィールド」をクリックし、左側の「表示」から「データシートビュー」の下の「デザインビュー」をクリックします。最も基本的なテーブルの作成方法です。

4.リレーションシップ(関連性)

いよいよ複数のテーブルを扱っていきます。リレーショナルデータベースの利点を、ここでしっかり学んでいきます。データを目的ごとのテーブルに分け、テーブル同士を関連づけて管理する方法です。

リレーションシップ
リレーションシップ

テーブル間のテーブル同士を関連付けることを「リレーションシップを設定する」といいます。

例えば、もしどちらかに《商品CD》がなければ、テーブル同士を関連付けることができません。なお、結合フィールドは、同じデータ型で同じデータを扱うフィールドであれば、フィールド名は同じでなくてもか構いません。

人1人の会員に担当者をつけるとする際、「表示」→「デザインビュー」から「担当者」をクリックし、「ルックアップウィザード」を選びます。すると「テーブルまたはクエリから」か「別のファイルからか」を選ぶボタンが表示されます。

つぎに「どのテーブルを選びますか?」と問われるので「担当者マスター」を選んで次へ、「担当者名」をダブルクリックします。そして担当者名を「昇順」で並べます。最後に「データ整合性」にチェックを入れます。

「連鎖性削除」にチェックを入れておくと、担当者が辞めた際に自動的に削除される仕組みです。至れり尽くせりですね。

それでは確認します。リレーションシップをクリックすると、「担当者」と「担当者」が線でつながれているのが分かります。共通のフィールドのうち、「主キー」が設定されたフィールドに対して、もう一つのフィールドは「外部キー」といいます。

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

リレーションシップ

①《リレーションシップ》をクリックします。
②《T商品マスター》が選択されていることを確認します。
③《リレーションシップ》ウィンドウに4つのテーブルのフィールドが表示されました。各フィールドの位置を変えます。
《T担当者マスター》と《T得意先マスター》にリレーションシップを設定します。

④《T担当者マスター》の《担当者CD》をドラッグし、《T得意先マスター》の《担当者CD》にドロップします。

リレーションシップ
リレーションシップ

《リレーションシップ》ダイアログボックスが表示されます。

⑤《テーブルクエリ》が《T担当者マスター》、《リレーションテーブル》が《T得意先マスター》になっていることを確認します。

《参照整合性》に☑を入れます。
《OK》を押します。

結合線が表示された
結合線が表示された

⑥《商品CD》を《T売り上げデータ》の《売上日》の下にドラッグ&ドロップします。
⑦《作成》を押します。

リレーションシップ
リレーションシップ

⑧《T得意先マスター》の《得意先CD》をドラッグし、《得意先CD》ドラッグ&ドロップします。

リレーションシップの結合線
リレーションシップの結合線

4つのテーブル間にリレーションシップが設定されます。

あとがき

Microsoft Access(マイクロソフト・アクセス)はデータベース管理システムであり、データ管理を学ぶ際には以下の注意点を考慮することが重要です:

  1. データベース設計の重要性:データベースの設計は基盤となる重要なステップです。適切なテーブル構造、フィールドのデータ型、関連性、インデックスなどを慎重に計画して設計することで、データベースの効率性や信頼性を確保できます。
  2. データの整合性を維持する:Accessでは、データの整合性を保つためにデータ型やフィールド制約を設定できます。これにより、不正確なデータや無効な値を防止し、データの品質を維持します。
  3. バックアップの重要性:データは貴重な資産であるため、定期的かつ適切なバックアップを取ることが重要です。バックアップはデータの損失を最小限に抑えるのに役立ちます。
  4. アクセス制御とセキュリティ:データベースには機密情報や重要なデータが含まれることがあります。適切なアクセス制御とセキュリティ対策を実施して、権限のないユーザーからデータを保護しましょう。
  5. インデックスの適切な使用:大きなデータベースでは、クエリのパフォーマンスを向上させるためにインデックスを適切に使用することが重要です。ただし、過剰なインデックスはデータベースのパフォーマンスを悪化させることがあるため、適度なバランスを保つことが必要です。
  6. クエリの最適化:クエリの効率性を向上させるために、クエリの設計と最適化に注意を払う必要があります。必要なデータのみを取得するようにクエリを作成することで、処理時間を短縮できます。
  7. データのバリデーション:データの入力時にはバリデーションを行い、正しいデータが入力されるようにしましょう。また、データの不備を修正するための方法を考慮しておくと便利です。
  8. データのエクスポート・インポート:Accessでは他のアプリケーションとのデータのやり取りができるため、データのエクスポートやインポートについても学ぶと便利です。
  9. バージョンと互換性:Microsoft Accessはバージョンアップが行われることがありますので、使用しているバージョンに合わせた情報や機能を学ぶことが重要です。
  10. オンラインリソースとトレーニング:Accessについての学習には、Microsoftの公式ドキュメントやオンラインリソース、トレーニングコースを活用すると役立ちます。

これらの注意点に留意しながら、Microsoft Accessを使ってデータ管理のスキルを向上させることで、より効率的で信頼性のあるデータベースを構築できます。

コメント

何なりとお申し付けください。