hatena
hatena
2021/07/05 (月) 11:10:15
テーブルAのデータとテーブルBのデータは一対一の関係でしょうか。
だとしたら、下記が参考になると思います。
一対多の関係なら、テーブルAをメインフォームとして、テーブルBをサブフォームとして埋め込む設計にするといいでしょう。
通報 ...
上記の補足説明をしておきます。
社員の通勤手段や交通費などのデータが一人の社員に対して1レコードのデータでいいのなら、一対一の関係になります。この場合、データベース的にはテーブルを分けるのはメリットがないです。扱いが面倒になるだけです。
マスターがどうとか、何を基準にしているか分かりませんが、データベース的には、一対一の関係なら、名前や部署と交通手段、交通費に差はありません。
必要に応じてクエリで表示するフィールドを選択して管理すればOKです。
例えば、通勤関係のデータを管理する場合は、社員番号、名前、通勤手段、交通費・・・ を表示するクエリを作成します。
どうしても分けたいということなら、上記のリンク先のように外部結合のクエリを作成して、参照整合性、連鎖更新等を設定しておけば一つのテーブルのように扱うことができます。ただ、特別な理由がないのならメリットはないと思います。
一人の社員に対して、複数のレコードが必用(例えば過去のデータを履歴として残しておきたいというような場合)なら、一対多の関係になります。その場合は、メイン/サブフォーム形式にするのがシンプルでいいでしょう。もし、こちらの場合は、その旨を申し出てくれれば、もう少し詳細に解説します。