ここから本文です

Access2013 子テーブル同士の連鎖更新を行いたい テーブルの連鎖更新は親テー...

rei********さん

2019/1/2317:16:25

Access2013 子テーブル同士の連鎖更新を行いたい


テーブルの連鎖更新は親テーブル一つに対して複数の子テーブルで行う事は可能だが、子テーブル同士は連鎖更新出来ない例えば、例1 〇

①親→②子
①を入力すれば②も連鎖更新される。

例2 〇
①親→②子
↘③子
②と③もまとめて連鎖更新される。

例3 ×
②子ー親①
↓↑
③子
②と③は連鎖更新できない。

今回の場合、②と③は子の部分になりますので、①が更新されれば、②と③も同時に更新されますが、②か③どちらかを入力しても②と③は同時に更新されません。

これを実現させるにはVBAでないと出来ないとの事なので、
わかる方がいましたら教えて頂きたくお願い致します。

閲覧数:
30
回答数:
2
お礼:
25枚

違反報告

ベストアンサーに選ばれた回答

プロフィール画像

カテゴリマスター

nor********さん

2019/1/2320:08:27

親と子のテーブルのテーブル名、項目名とそれぞれのテーブルの主キーを教えてください。
例3の子の更新する項目と内容も。

  • 質問者

    rei********さん

    2019/1/2717:26:22

    『家計簿テーブル』
    ①費目ID(主キー)
    ②日付
    ③レシートID
    ④商品ID
    ⑤備考ID
    ⑥数量
    ⑦支出
    ⑧収入

    『レシートテーブル』
    ①レシートID(主キー)
    ②郵便番号
    ③購入場所
    ④店舗
    ⑤住所
    ⑥電話番号

    『商品テーブル』
    ①商品ID(主キー)
    ②商品名
    ③分類
    ④レシートID

    『備考テーブル』
    ①備考ID(主キー)
    ②備考
    ③商品ID

    クエリ&入力フォーム
    ①費目ID (家計簿テーブル)
    ②日付 (家計簿テーブル)
    ③レシートID (家計簿テーブル)
    ④商品ID (家計簿テーブル)
    ⑤備考ID (家計簿テーブル)
    ②商品名 (商品テーブル)
    ③分類 (商品テーブル)
    ②郵便番号 (レシートテーブル)
    ③購入場所 (レシートテーブル)
    ④店舗 (レシートテーブル)
    ⑤住所 (レシートテーブル)
    ⑥電話番号 (レシートテーブル)
    ⑥数量 (家計簿テーブル)
    ⑦支出 (家計簿テーブル)
    ⑧収入 (家計簿テーブル)


    申し訳ございませんが二回に分けて書きます。

  • その他の返信(4件)を表示

返信を取り消しますが
よろしいですか?

  • 取り消す
  • キャンセル

ベストアンサー以外の回答

1〜1件/1件中

プロフィール画像

カテゴリマスター

hat********さん

2019/1/2409:29:19

そもそも連鎖更新とは、一側のデータを更新したら、それとリレーションするデータを自動で更新するものです。

単純な ①親→②子 だけの場合でも、ユーザーが更新するのは一側(①親)です。
②子側から更新したら参照整合エラーになります。

よって、
②子ー親①
↓↑
③子
という連鎖更新の設定は原理的に不可能。

③子 と連結したフォームで外部キーを更新したい場合は、
①親→②子
↘③子
という連鎖更新を設定しておいて、VBAで①親のキーフィールドを更新することになります。
方法としては、③子フォームから、①親フォームを呼び出してそこで更新するという方法が分かりやすいと思います。(ユーザーにとっても、プログラマーにとっても)

みんなで作る知恵袋 悩みや疑問、なんでも気軽にきいちゃおう!

Q&Aをキーワードで検索:

Yahoo! JAPANは、回答に記載された内容の信ぴょう性、正確性を保証しておりません。
お客様自身の責任と判断で、ご利用ください。
本文はここまでです このページの先頭へ

「追加する」ボタンを押してください。

閉じる

※知恵コレクションに追加された質問は選択されたID/ニックネームのMy知恵袋で確認できます。

不適切な投稿でないことを報告しました。

閉じる