2

顧客の名前、都市、州を格納する単純なデータベースがあります。この 2 つの新しいテーブルに追加しました。1 つは車のモデルを記述するためのルックアップ テーブルで、2 つ目は顧客レコードを使用して 1 つ以上の車のモデルを設定するためのジャンクション テーブルです。

現在の関係のレイアウトは次のとおりです。

ここに画像の説明を入力

そして、各テーブルのデータシート。 cust_idmodel_idは自動インクリメント列です。

人口統計

ここに画像の説明を入力

ルックアップモデル

ここに画像の説明を入力

junction_model

ここに画像の説明を入力

スクリプト言語、MySQL、および HTML を使用して、完全なフォームを数分で作り上げることができました。Access 2007 でこれがどのように行われるかを理解するのに少し苦労しています。

私が必要とする2つの機能は

  1. ルックアップ テーブルにアイテムを編集/追加する機能
  2. 主キーの関係を維持しながら、ルックアップ テーブルで見つかった車から選択するなど、新しい顧客レコードを追加する機能。

元:

"Mary Jane" は Ford Pinto と Datson 510 を所有しています。作成するフォームに彼女の情報を追加すると、彼女の cust_id は 5 になり、2 つの新しいエントリが cust_id: 2 (ford ) と 5 (ダットサン)。

Access 2007 でこのフォームを設定する比較的簡単な方法はありますか?

編集:これは私がこれまでに何とか取り組んできたことです。このサブフォームには正しいモデル/顧客の関連付けがリストされていますが、モデル ID ではなく、model_desc のみが表示されたコンボ ボックスを表示したいと考えています。

ここに画像の説明を入力

4

1 に答える 1

1

「サブフォーム」を含むフォームは、このような場合に役立ちます。

  • 所有者情報 (名前、住所など) を追加/編集できる [人口統計] テーブルにバインドされた「所有者」という名前のフォームを作成できます。

  • [junction_model] テーブルにバインドされた「Cars_Owned_subform」などの名前の「連続フォーム」フォームを作成できます。そのフォームには、Row Source が [lookup_model] テーブルであるコンボ ボックスが含まれ、[model_desc] が表示され、[model_id] が返されます。

  • 次に、サブフォーム ウィザードを使用してサブフォーム コントロールを「所有者」テーブルに追加すると、[cust_id] に基づいてサブフォームをその親にリンクするのに役立ちます。次に、ある所有者から次の所有者に移動すると、その車がサブフォームで自動的に更新されます。サブフォームに新しい車を追加すると、レコードが現在表示されている所有者の [cust_id] に自動的に関連付けられます。

ルックアップ テーブルの編集に関しては、[lookup_model] テーブルを編集するための単純なフォームを非常に簡単に作成できます。

再編集: 質問の更新

[model_desc] を表示して [model_id] を返すコンボボックスを作成するには、最初の列の幅が 0 である 2 つの列をコンボ ボックスに「表示」する必要があります。つまり、コンボ ボックスの Format プロパティには、次のような値が含まれている必要があります。

列数: 2
列幅: 0";1.3646"

...そして、Data プロパティには次のような値が含まれている必要があります...

行ソース: lookup_model
バインドされた列: 1

最終結果は次のようになります。

owner_form.png

デザイン ビューのサブフォームは次のようになります。

subform.png

于 2013-05-13T19:07:40.993 に答える