2011-02-22 16 views
0

我有一個Access數據庫,我想存儲在一個公司聯繫人: 在這個數據庫中我有一個表命名爲「用戶」在那裏我保持有權訪問數據庫的用戶 。在主表,命名爲「聯繫人」, 我的兩個領域「insert_user」和「contact_user」的指代誰進入聯繫人信息,究竟是誰做出的接觸用戶的用戶 。 我想這樣做,我將不得不將兩個字段都設置爲外鍵 到同一個表/字段,即「用戶」/「用戶名」。VB.Net與訪問 - 設置兩個外鍵,引用同一個表/場

所以: 我在兩個不同的領域(「insert_user」,「contact_user」),這指的是同一臺/場(「用戶」 /「用戶名」)中設置兩個外鍵約束一個 Access數據庫,使用VB.Net OLEDB(請參閱下面的SQL語句)

ALTER TABLE contacts ADD CONSTRAINT insert_user_foreignkey FOREIGN KEY (insert_user) REFERENCES users (username) 
ALTER TABLE contacts ADD CONSTRAINT contact_user_foreignkey FOREIGN KEY (contact_user) REFERENCES users (username) 

我打開與MS-訪問數據庫。 我看到所有的表都沒問題(因爲他們應該是)。

然而,當我點擊的關係在訪問我讓我所有的表加上一個名爲users_1連接到「聯繫人」 /「contact_user」表(該表的用戶只連接到「聯繫人」 /「insert_user」)

奇怪的是,在Access的表格視圖中,我沒有看到這個表格,只能在關係視圖中看到。

問題

  • 是我的思路正確(設置2個外鍵,引用同一個表/場)?
  • 這是什麼表 「users_1」
  • 請問我的數據庫工作還是我做錯了什麼?

回答

1

這是當一個表多次使用該訪問建立關係的方式。如果您添加了另一個關係,則將針對users_2等。這只是一個別名,而不是一個新表。

相關問題