みんなの「教えて(疑問・質問)」にみんなで「答える」Q&Aコミュニティ

こんにちはゲストさん。会員登録(無料)して質問・回答してみよう!

解決済みの質問

アクセス:関連ビューの再結合

テーブルとクエリがあります。テーブルの不具合で一旦削除せざるを得ませんでした。削除後同じ名前で再作成しましたが、今までたくさんクエリで結ばれていて、「テーブルと関連ビュー」として同じ場所に表示されていたクエリが、「関連付けられていないオブジェクト」の下に表示されています。
これらを一発で再度関連するテーブルと同じ場所に表示する方法はありませんか。
いちいちクエリを開いて保存を繰り返せば再度関連付けられることは分かったのですが、数が多いので別の方法をと思っています。

投稿日時 - 2016-11-22 10:00:14

QNo.9258775

すぐに回答ほしいです

質問者が選んだベストアンサー

>これが一度テーブルを削除した後、全く同じテーブルを作成してもグルーピングされません。
ここで「グルーピング」とは1対N結合のことですか

テーブルを削除すると、削除したテーブルのリレーションシップは全て解消します。
テーブルを再作成しただけではリレーションシップは復活しません。
以下の手順でリレーションシップを再構築してください。
【データベースツールリボン】➡【リレーションシップ】
➡【リレーションシップ内の空白部分を右クリック】➡【テーブルの表示】
➡【再作成したテーブルとクエリ】➡【追加】➡【閉じる】
➡【テーブルとクエリの該当のフィールドをドラッグで結ぶ➡【結合の種類】
➡【OK】➡【作成】
※結合の種類には1対N結合の他2種類の3種類があります種類を選ぶと説明が表示されます。

投稿日時 - 2016-11-24 12:14:03

お礼

ありがとうございます。
リレーションシップのことが理解できていないようです。
勉強してから再度トライしてみます。

投稿日時 - 2016-11-25 10:30:03

このQ&Aは役に立ちましたか?

0人が「このQ&Aが役に立った」と投票しています

回答(4)

ANo.4

> オフの状態からオンにすると
が味噌です。

一旦オフにしてオプションを閉じる。
もう1度、オンにする、
です。

投稿日時 - 2016-11-25 13:21:17

ANo.3

オプションの「名前の自動修正」をオフの状態からオンにすると
移動するようです。

レポート等で副作用があるかかもしれません。
コピーのDBでテストしてみることをお勧めします。

投稿日時 - 2016-11-24 16:21:03

お礼

ありがとうございます。
既にオンになっていました。

投稿日時 - 2016-11-25 10:29:07

ANo.1

勝手な憶測で的外れかもしれませんが
関連付けとはリレーションシップのことですね
添付図の上段は食事履歴テーブルと食事履歴明細テーブルが
食事履歴.IDと食事履歴明細.食事履歴IDで関連付けされています。
ここで食事履歴のIDだけを変更するとテーブル間の関連付けが断ち切られてしまいます。

以後この添付テーブルで説明します
先ず食事履歴と食事履歴明細の複製をコピペで作成 食事履歴のコピーと食事履歴明細のコピー
「添付のテーブルは何れも主キーのIDはオートナンバー形式です
食事履歴のコピー
1.食事履歴の主キーのフィールド名とデータ型をID旧、数値型に変更
2.ID旧のインデックスを重複無しに設定
3.IDをオートナンバー形式でフィールドを追加し主キー設定
 これでIDには自動的に連番が生成されます

食事履歴明細のコピー
4.食事履歴IDを食事履歴ID旧と改名
5.食事履歴IDのフィールドを追加

6.食事履歴テーブル.IDと食事履歴明細テーブル.食事明細IDを関連付け

更新クエリーを作成
7.なにかのボックスに次の更新クエリーを貼り付けます。
Private Sub 主キー再定義_Click()
DoCmd.RunSQL ("UPDATE [食事履歴 のコピー] INNER JOIN [食事履歴明細 のコピー] ON [食事履歴 のコピー].[ID旧] = [食事履歴明細 のコピー].[食事履歴旧ID] SET [食事履歴明細 のコピー].食事履歴ID = [食事履歴 のコピー].[ID];")
End Sub
8.それぞれのテーブルからID旧と食事履歴旧IDを除去します

投稿日時 - 2016-11-23 16:37:16

お礼

丁寧に説明頂きましたが、そうではありません。
うまく説明できていなかったことお詫びします。
テーブルとクエリでリレーションシップで結んだ場合、オブジェクトを並び替えたりするところで、「カテゴリ」-「テーブルと関連ビュー」を実行すると関連するテーブルとクエリがグルーピングされますよね。これが一度テーブルを削除した後、全く同じテーブルを作成してもグルーピングされません。しかしもう一度ひとつひとつのクエリを事項することで関係が戻るのですが、全てのテーブルとクエリをグルーピングを一度に出来る機能がないかという質問でした。

投稿日時 - 2016-11-24 08:51:56

あなたにオススメの質問