2011-10-22 113 views
0

我正在使用MS Access作爲MySQL數據庫的前端。其中我有幾張桌子,全部基於家庭和人的概念(分別爲一對多)。從中可以看出幾個連接表(如種族和飲食限制),這些連接表有很多。我希望能夠從MS Access中的單一表單編輯此內容。MS Access子表格

到目前爲止,我已經設置好了,以便我可以編輯家庭信息,查看/編輯所有與之關聯的人員,並擴展人員詳細信息以查看與該人員關聯的連接表中的1(3)人記錄。我無法弄清楚如何讓所有3張桌子都可見,有誰知道如何做到這一點?

One join table shown in the expansion.

+0

創建窗體和子窗體幾乎總是值得花時間,而不是依賴於數據表,這就是您展示的內容。主窗體將顯示主表中的單個記錄,其中各個子窗體通過單個或連續窗體視圖中的鏈接子窗體和鏈接主窗體字段相關聯,如果需要易於使用,則位於選項卡上。 – Fionnuala

+0

除非我誤解了MS Access,我正在使用子窗體。人們(如上表所示)是家庭的一個子表格(由於家庭和人民之間的一對多關係,這是家庭中的人們的表格),並且種族/收入表格是人形式的子形式,其進一步是家庭形式的子形式。 –

+0

您正在使用子數據表而不是子表單。我同意它不是很清楚。這是一個表格/子表單的圖像http://allenbrowne.com/graphics/LibraryForm0.png – Fionnuala

回答

2

我會在數據表視圖中使用連續表單或3個表單構建3個網格。

然後創建一個4表單,並放入上述3個表單中。

在主窗體(現在是子窗體)中,在當前事件中,您將 放置以下命令以使子窗體遵循此表單。

me.Parent.Child1.Requery me.Parent.Child2.Requery。兒童1

在鏈接子/主設置,您將:

鏈接子字段main_id(無論是字段的名稱 此子形式用來追溯至父表) 兒童2形式鏈接主[型模] [表]。[ID]

在鏈接子/主設置你把

鏈接子字段main_id(無論是現場的 此子形式名稱用於與父表關聯) LinkMasterFields [MasterForm]。[form]。[ID](「masterForm」是您用來存放主窗體的控件的名稱 )。

「多」許多畫面是這樣的:

enter image description here

以上是我們採取像50 $的數量和在許多帳戶分配量的經典會計或資金分配。

+0

我會試試看,謝謝! –

0

聽起來像一個結構問題,實際上。將你的財產配件表(飲食限制,職業等)(單身人士可能擁有的一些財產)建立在你的個人信息表上,或許可以鍵入某種個人身份證明(僱主經常使用SSN,因爲它們是獨特的 - 儘管在你的情況下,你可能會讓它們自動生成)。 「種族」這樣的項目和家庭中的位置都是個人擁有的東西之一,並且可以確實放在您的個人信息表中。

通過適當的結構和正確的查詢工作,您可以使用一種表單,允許您在保持參照完整性的同時編輯家族中的所有屬性。

+0

家庭中的位置實際上是當前個人的一個屬性,它只是鏈接到另一個表(多對一)的理智。不幸的是,這個環境中的個人實際上可以擁有多個種族(因爲所涉及的紙質形式標題爲「檢查所有適用的」),所以這些多對多關係是無法實現的。 –