![](http://oshiete.xgoo.jp/images/v2/pc/qa/question_title.png?e8efa67)
リレーションシップの設定について
Access2002にて受注管理を行っており
テーブル、フィールドが次のように存在しています。
<T_納入先>
顧客ID
納入先コード
住所等情報...
<T_顧客>
顧客ID
住所等情報...
<T_売上情報>
受注ID
顧客ID
売上日やその他情報...
<T_売上明細>
受注ID
明細や金額等...
----------
<T_顧客>に登録した顧客は複数の納入先を持つため
[<T_顧客>の顧客ID 対 <T_納入先>の顧客ID]を[1 対 多]にてリレーションシップを作成しています。
<T_売上情報>の顧客IDと、<T_顧客>の顧客IDを[1 対 1]にて
リレーションシップを作成しています。
----------
ここで売上情報を登録するために「売上入力フォーム」なるものを作成し、
顧客IDや納入先の指定、売上日の記録や売り上げた明細を登録したいのですが
明細の入力部分は、サブフォームを作成し、<T_売上情報>と<T_売上明細>のクエリで問題ないのですが
このフォーム自体のレコードソースとして使用するために
<T_納入先><T_顧客><T_売上情報>の3つのテーブルの情報を含んだクエリを
作成したのですが、クエリ作成後、実行してもレコードが一切表示されません。
(おそらく<T_顧客>の中にさらに納入先が複数ある部分が
うまくリレーションシップできていなくて矛盾を起こしているのでは・・と思ったのですが。)
もちろん<T_納入先>と<T_顧客>のみであれば問題なくクエリは実行し、レコードも表示されます。
ある一つの顧客情報内にも複数の情報(=納入先)がある場合、
リレーションシップの設定はどのようにすればよいでしょうか。
長々とありますが、お分かりのかた是非とも教えて下さい。
よろしくお願いいたします。
No.2ベストアンサー
- 回答日時:
状況が見えませんが
T_納入先の納入納入先コードの扱いに問題がありそうです。
それとT_売上情報での納入先コードの関係。
T_納入先の顧客IDと納入先コードがセットになって初めて一意のレコードが出てくるような?
私は、テーブル設計時に鉛筆と消しゴムであれこれやっております。
ラインを消したり、書き加えたり、フィールドはこっちに移動かな?あーたらこーたら。
いきなりパソコン向かって考えると、考えなければならない視野が狭くなるように思います。
回答有り難うございます。
そうですね、私もこの後、テーブル設計情報を
紙に書いて、線で結んで考えてみました。
そうしたら、当初の考えていた方法ではないですが
結果が同じになるリレーションシップの設定が
思いつきました。
仰るとおり、いきなりパソコンに向かったもので
視野が狭くなっていたと思います。
有り難うございました!
No.1
- 回答日時:
T顧客(1:顧客ID)→(多)T納入先
T顧客(1:顧客ID)→(多)T売上情報
T納入先(1:顧客ID&納入先コード)→(多)T売上情報
T売上情報(1:受注ID&納入先コード)→(多)T売上明細
ではないですか?要はT納入先とT売上情報のアンマッチがあるため表示されない。
この回答への補足
回答有り難うございました!
なるほど、全てリレーションシップを作成し
各々のフィールドを結びつけるのですね。
早速やってみましたが、
T納入先(1:顧客ID&納入先コード)→(多)T売上情報
T売上情報(1:受注ID&納入先コード)→(多)T売上明細
の部分で、
「主テーブルで参照されているフィールド用の固有インデックスが見つかりません。」
と表示されてしまいます。
これは1対多の1側のフィールドに固有インデックスが足りないと言うことでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- その他(データベース) accessについて 2 2022/05/31 16:58
- 経営情報システム accessでの請求管理について 12 2022/06/11 16:20
- Access(アクセス) Access IF文でテーブルに存在しない場合の処理について 2 2022/10/10 18:09
- Visual Basic(VBA) 複数ページあるPDFファイル内の文字列等の情報をキーにPDFをグループ分け分割したい。 2 2022/06/25 09:51
- その他(開発・運用・管理) マイクロソフト製品のライセンス販売で困ってます 1 2022/06/30 19:52
- Excel(エクセル) Excelで、別シートへ情報を参照表示する関数について。 2 2023/06/26 09:58
- Visual Basic(VBA) 指定月分の顧客データファイルを統合して並べ替え、所定の場所に貼り付ける 3 2022/09/10 07:55
- 営業・販売・サービス 役所の担当者のマイナンバーカードの登録間違いで首相が謝るって、TOYOTAの販売店の担当者が顧客情報 4 2023/06/14 07:17
- 政治 日本で訴訟件数が少ないのは、自民党とビッグモーターが詐欺組織だからですか? 2 2023/07/27 11:30
- Excel(エクセル) エクセルでSUMIFS関数で条件範囲の部分が#valueになる。 4 2023/04/28 12:42
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
Access 縦(行)のデータを横(列)...
-
郵便番号更新による既存顧客住...
-
Access 既に開いているフォー...
-
ワードでの単純作業の効率化に...
-
データベースの1要素に複数デー...
-
Access IF文でテーブルに存在し...
-
Excel 2019 のピボットテーブル...
-
エクセルVBAで5行目からオート...
-
「直需」の意味を教えてください
-
ACCESSでの改行コード
-
Accessでテーブル名やクエリ名...
-
Access テキスト型に対する指定...
-
Accessでコードを入れると名前...
-
セルの右クリックで出る項目を...
-
異なるサーバのDBデータ同士を...
-
作番ってどういう意味でしょうか?
-
Accessフォーム全レコードをPDF...
-
【至急】Accessのフィールドの...
-
ACCESSのクエリで集計で、先頭...
-
Accessで、固定アルファベット+...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
データベースの1要素に複数デー...
-
Access VBAでクエリーのレコー...
-
Access IF文でテーブルに存在し...
-
Access フォームのデータがテー...
-
顧客IDを入力すると顧客名や住...
-
ACCESS で マクロの中でフィ...
-
ワードでの単純作業の効率化に...
-
ワードで保存するファイル名の...
-
シングルクォーテーションとダ...
-
Access 縦(行)のデータを横(列)...
-
別のDBからテーブルをコピーす...
-
Access 既に開いているフォー...
-
Access2000 単票フォーム上の...
-
Accessデータベースで行と列を...
-
Accessで名寄せグループの関係...
-
文字化け、記号の含まれるフィ...
-
Access レコードロックについて...
-
【続続】Access2002で連番のつ...
-
ACCESSで重複したデータがある...
-
Access クエリ このレコードセ...
おすすめ情報