前回は、Accessのテーブルの正体について記事を書きました。
- テーブルとは何か
- Excelシートとの違い
上のようなことについて触れていますので、「そもそもテーブルと何かが分からない」という方は一度こちらをご覧になってこちらに戻ってきてください。
今回は、前回の内容を把握したうえて、実際にテーブルを作成してみます。
もくじ
この記事を書いている私は、約10年にわたりAccessでの開発を行ってきました。
Accessを習得するためには、データベースの基本である「テーブル」を正しく操作する必要があります。
Accessではクエリが脚光を浴びがちですが、正しいテーブルの操作が出来てこそ、クエリのテクニックも活きてきます。
- Accessをゼロから学びたい方
- もう一度Accessの基本に戻って学習しなおしたい方
を対象にしています。
テーブル作成手順1-テーブルを新規作成する
これから実際にテーブルを作ってみます。
WindowsメニューからAccessを新規作成します。
「空のデータベース」をクリックします。
保存する場所とデータベース名を入力し、作成をクリックします。
新しいデータベースが作成されて、「テーブル1」も同時に新規作成されました。
タグを右クリックし、「デザインビュー」を選択します。
デザインビューに切り替わりました。
「データシートビュー」でも項目の追加はできますが、「デザインビュー」の方が細かく設定できるのでおすすめです。
テーブルだけを新規作成したい場合は、作成タブの「テーブルデザイン」をクリックします。
- データを入力する時はデータシートビュー
- 設定はデザインビュー
など、目的によってビューを使い分けましょう。
テーブル作成手順2-フィールドを追加する
デザインビューの「フィールド名」に、フィールドを追加することができます。
Accessでは、フィールド名に日本語を設定することができます。
一方、「Oracle」や「Microsoft SQL Server」などのデータベースシステムでは、日本語のフィールド名使用は推奨されていません。
将来他のデータベースに格上げすることが想定される場合は、日本語のフィールド名は避けておいた方が無難です。
Accessからデータベースシステムに格上げする予定が無い場合は、日本語のフィールド名でも問題ありません。
テーブル作成手順3-データ型を設定する
同じくデザインビューでは、フィールドのデータ型を設定できます。
よく使われるデータ型について紹介します。
テキスト(文字列)型
テキスト型は、「短いテキスト型」と「長いテキスト型」に分けられます。
- 短いテキスト型は255文字以下
- 長いテキスト型は255文字以上
また、テキスト型はフィールドに入れる文字数を制限することができます。
商品コードや名前など文字数が少なくても済むものは字数を少なくして、備考などは多めに設定しましょう。
文字数を制限することは、誤入力を防ぐ役割もあります。
業務システムなどのデータベースについては、必要最小限の文字数を設定することが多いです。
数値型
名前の通り、数値を入力できる型です。
整数の場合は「長整数型」、小数点以下を含む場合は「十進型」がオススメです。
経理などの業務システムは「浮動小数点」よりも「十進型」の方を使用していることが多いようです。
調べてみると、両者は桁数などの精度が違うようですが、実務では多くの桁数が求められることは非常に稀なことです。
せいぜい下2桁程度までで十分なことが多いです。
浮動小数点の場合は下7桁以上が表示されます。
実務ではそこまでの精度は必要とされません。
十進型では、「精度」と「小数点以下保持桁数」を設定します。
例えば、「103.5」と、データを入力する場合は以下の手順で設定します。
- 103.5は3桁と小数点以下1桁
- 「精度」は3+1=4(余裕を持ちたければ5)
- 「小数点以下保持桁数」は1
日付型
詳細は書式で設定することができます。
個別に日付や時間を指定したり、日付と時間を組み合わせることもできます。
実際にデータを入力する時は、カレンダーが表示されます。
Yes/No型
「Yes/No型」に設定すると、データシートビューではチェックボックスが表示されます。
TrueとFalseで表現されます。
オートナンバー型
Access独特の機能で、テーブルにデータが入力された順に番号を振ることができます。
後で入力順に並べることがあるなら設定しておいた方がいいですが、無理に使用する必要はないです。
他にも、写真を貼り付けるオブジェクト型などがあります。
テーブル作成手順4-主キーを設定する
また、必要に応じてテーブルに主キーを設けることがあります。
マスタデータには必ず主キーを用います。
例えば、商品マスタには商品コードを設定します。
違う商品なのに同じ商品コードが使われていたら混乱しますよね?
主キーを設定したフィールドには重複データを入力できません。
商品CDに「1234」と重複データを入力すると、エラーが発生してデータを更新できなくなります。
4つの手順でテーブルをつくることができれば、あとは実際にデータをいくつか入力してみましょう。問題なければ、クエリやフォームの作成にかかることができます。
また、必要に応じてリレーションシップの設定も行っておきましょう。
テーブルを作るためには前準備が必要
Accessデータベースを作る前には、必ず準備しておいて欲しいことがあります。
Excelの場合は、ゼロからのスタートでも、何となく触っていればそれなりの表が出来上がります。
一方、Accessの場合は、Excelと同じ手順で作り上げることはできません。
手順としては、
- 帳票類の全体像を掴む
- 正規化を行い、テーブルを分割する
やや堅苦しい言葉で表現すると「データベースの物理設計」が必要になります。
ただし、ExcelのVLOOKUP関数を活用して表を分割する習慣のある方にとっては、それほど難易度の高い作業ではありません。
70%程度の完成度を目指せば十分です。
実際にAccessを運用し始めてから、項目の修正を行えばよいです。
ノープランでテーブル作成をすすめることだけは避けましょう。
過去にデータベース設計について記事を書いていますので、データベース設計の経験の無い方は是非こちらをごらんください。
まとめ
今回はAccessのテーブルの操作と設定について触れました。
データベースの心臓部は間違いなくテーブルです。
事前に設計を意識しないといけなかったりなど、Accessデータベースを作り上げるには、高いハードルを多くの人は感じているのではないでしょうか?
Excelで商品マスタ表などを作ったことのある方にとっては、今の作業の延長線上で問題ありません。
項目決めなどをいつもより少しだけ意識できれば、使えるテーブルを作り上げることができます。
テーブルの扱い方をしっかりと学べば、クエリやフォームの学習も楽になります。
当ブログでは、Accessアプリの使い方について解説した他の記事もあります。
下にまとめ記事のリンクを入れておきますので、よかったらごらんください。