Accessで、データベースを構築するには、まずテーブルを作成します。
次に、テーブル間の、関連付けたいフィールド同士に、リレーションシップを設定していきます。その際に、参照整合性の設定をしておくと、この後のデータの入力ミスや誤って削除してしまうミスを防ぐことができます。
この参照整合性の設定で、エラーがでてしまう事がよくあるので、その原因を解説していきます。
目次
1.リレーションシップの設定
①リレーションシップを構築する
Accessでは、テーブルを小分けして作成し、それらを互いに関連付けて管理をします。
例えばあるパソコンスクールで、生徒の住所などの情報、生徒の利用履歴、生徒の受講科目などを管理する場合、これらをひとつの表にまとめるのではなく、関連する項目ごとに分類して表を作成します。
生徒の情報は生徒マスターに、利用日時などは利用履歴データに、受講科目は受講科目マスターに分類して、それぞれ表を作成します。
そして、3つのテーブルの、同じフィールド同士で関連付け(=リレーションシップ)を設定して管理します。
②リレーションシップの設定をする
《データベースツール》タブー《リレーションシップ》グループー《リレーションシップ》をクリックー《テーブルの表示》ダイアログボックスー設定したいテーブルを追加する
関連付けたいフィールドからフィールドへドラッグするー《リレーションシップ》ダイアログボックスの参照整合性にチェックを入れてOKをクリック。
※ここで、エラーメッセージが表示されて、設定できない場合は、次の「2」内容を確認していきましょう。
2.リレーションシップで参照整合性が設定できない原因
①関連付けたいフィールドのフィールド名が違う
関連付けたいフィールド名が違えばもちろん、参照整合性は設定できないのですが、フィールド名の入力ミスはすぐに気づきますね。
初心者に多く見つけずらいミスが、フィールド名の前や後ろにスペースが入ってしまっている場合です。特に後ろのスペースは見た目では分かりません。
後ろのスペースの調べ方は、フィールド名の後ろにカーソルを立たせ、→キーを押して、カーソルが動けばスペースがありますので、削除しましょう。
②関連付けたいフィールド同士のデータ型とフィールドサイズが違う
関連付けたい2つのテーブルをデザインビューで開き、関連付けたいフィールドのデータ型とフィールドサイズを確認してください。
違っている場合は、同じデータ型とフィールドサイズに変更しましょう。
例えば、下の場合なら「T生徒マスター」の「生徒NO」のデータ型は《短いテキスト》でフィールドサイズは「4」、「T利用履歴データ」のデータ型は《短いテキスト》でフィールドサイズは「5」になっています。
どちらか正しいフィールドサイズに変更しましょう。例えば、「T利用履歴データ」のフィールドサイズを「5」から「4」に修正します。
③「主キー」に設定されているコード以外のコードを既に「外部キー」で入力してしまっている
参照整合性を設定した後は、外部キーのコードの入力ミスは防ぐことができます。
しかし、リレーションシップを設定する前に、既に入力しているデータやインポートしたデータに矛盾がある場合には、参照整合性の設定はできません。
「主キー」にないコードが、「外部キー」で入力されていたら、修正しましょう。
下の図では、「T生徒マスター」の「生徒NO」が主キーです。ここにない「生徒NO」を「T利用履歴データ」で例えば「9999」と入力してしまっていると参照整合性は設定できません。
YouTubeでみる↓
まとめ
Accessで、リレーションシップを作成する際、参照整合性の設定をしておくと、データの入力ミスを防ぐことができますので、ぜひ設定しましょう。
参照整合性が設定できない原因は、フィールド名、フィールドサイズが違う、主キーにないコードを外部キーで入力してしまっているという事が考えられますので、確認してみましょう。
↓↓マイクロソフトの認定試験「MOS」の試験対策本です。
バージョンは2016で、パソコンにインストールして独学で勉強できるのでおすすめです!
Microsoft Office Specialist Microsoft Accsess 2016 対策テキスト&問題集 (よくわかるマスター)