- 締切済み
Accessで3つのテーブルの結合とフィールドについて教えてください。
Access2003を使用しています。 「取引先マスタ」テーブルに契約の情報ものせることにしました。 契約は今のところ2種類ありますが、3種類になる可能性もありそうなので、応用が利くようにサブフォームにしました。http://questionbox.msn.co.jp/qa3473958.html 契約内容では弊社の誰が担当したのかわかるようにしたいです。 けれど担当者は新たにフィールドを設けずに、担当者マスタのテーブルから引っ張ってきたほうが良いのかなと思いました。 とすると、契約のテーブルには担当者IDだけでも加えないと結合できないなと思いました。 質問1.この考え方であっているでしょうか? 各テーブルは下記のようになっています。 質問2.T取引先マスタとT担当者マスタに「担当者」という同名のフィールドがありますが、意味合いは違います。これは「取引先担当者」と「弊社担当者」と名前を分けたほうがよいのでしょうか? 一緒でもなんとかいけるものでしょうか? テーブルの正規化いうものがしっかりと理解できていないので正しいのかどうがわかりかねています。 この3つのテーブルを結合させて、フォームとレポートを作りたいのです。 そして、契約締結済みと未締結との取引先に抽出わけをしたいのです・・・が、ここでつまずいてしまって困っております。 お手数をおかけして申し訳ないのですが、どなたかご教示ください。 よろしくお願いいたします。 T取引先マスタ ID 取引先ID 取引先名 フリガナ 部署名 担当者名・・・・・・取引先の担当者名 郵便番号 都道府県 住所1 住所2 電話番号 FAX番号 URL 電子メール 備考 T取引先_契約内容 ID 取引先ID 契約種別・・・・・・基本と業務委託がある 契約締結日 契約終了日 契約者役職 取引先契約者名 担当者ID・・・・・・弊社の担当者を判別するもの。T担当者ますたと結合する。 T担当者 担当者ID 並べ替え 担当者名 フリガナ 備考
- みんなの回答 (1)
- 専門家の回答
みんなの回答
服飾デザイナでプログラマではありませんので参考程度にして下さい。 そして、かなり私流に改ざんしております。 そして、質疑に無関係と思われる列は割愛しています。 担当者: ID___並び順____名前_________読み _1__________1____山田 太郎___ヤマダ タロウ _2__________2____田中 次郎___タナカ ジロウ ・私は、主キーは[ID](長整数)で統一しています。 [担当者].[ID]、[担当者]![ID] という表現することが多いのでこれで良いと思っています。 取引先: ID___名称___読み____部署名___担当者名 _1___A社_____Aシャ___営業______鈴木 一郎 _2___B社_____Bシャ___総務______中村 主水 [取引先].[名称]、[取引先]![名称] と表現することが多いのでこれで良いと思っています。 契約履歴: ID__担当者_ID____取引先_ID___締結日_________[取引先_担当者名] _1______________1_______________1___2007/11/01___木下 五郎 _2______________2_______________2___2007/11/02___山下 信次 ID__担当者_ID____取引先_ID___締結日_________[取引先_担当者名] _1___山田 太郎___A社___________2007/11/01___木下 五郎 _2___田中 次郎___B社___________2007/11/02___山下 信次 後は、ルックアップ設定後にテーブルを開いたものです。 ・[担当者_ID]、[取引先_ID]、[取引先_担当者名]・・・いずれも、<テーブル名+列名>で命名。 >そして、契約締結済みと未締結との取引先に抽出わけをしたいのです・・・ これは、テーブル設計には関係ないと思います。 特定期間の[契約履歴]から[取引先_ID]をユニークに抽出した結果を XXXX JOIN すれば事足りるのでは??? ※適当に参考になさって下さい。
お礼
抽出条件に応じたレポート作成のところでつまづいたままです。 アドバイスをいただいたのに、理解することができませんでした。私の力のなさです。 実際に試してから締め切りたかったのですが、次の質問を投稿したいため、この質問は締め切らせていただきます。 教えていただいたのに申しありません。 ご回答ありがとうございました!