2011-12-19 95 views
0

我是新來的數據庫。我總共有4個表格:當用戶登錄到Facebook時,會自動填充3個表格。我希望將這些表中主鍵的值填充到第4個表中。我如何做到這一點......我很快就需要幫助!如何將多個表中的值插入到另一個表中?

這表怎麼看:

table:attributes 
fb_user : fb_uid, birhtday, gender, email. 
company_master : com_id, com_name. 
position_master : pos_id, pos_name. 

,第4臺是這樣的:

[table]:[attributes] 
work_history : work_id, fb_uid, com_id, pos_id. 

fb_uidpos_idcom_id是主鍵。

如何使用較少的數據庫操作執行此操作?有沒有什麼辦法使用觸發器來優化?

回答

0

首先你使用什麼類型的數據庫?其次,這似乎是一個數據庫設計問題。實際上,您應該在所有表格中使用一個唯一的主鍵,而不是使用不同的原色並將其映射。由於您使用Facebook,因此使用他們的Facebook ID作爲所有表格的主鍵是有意義的,然後將其他ID作爲唯一字段存儲。這也可以讓你輕鬆使用像連接這樣有用的功能來一次從多個表中檢索數據。如果這不切實際,例如,因爲您爲同一用戶使用多個登錄(Facebook Google等),那麼您希望有一個像您所建議的查找表作爲駕駛表,然後用它來幫助填充其他用戶。理想情況下,您希望儘可能減少冗餘數據,以減少數據不一致的風險。如果您對數據庫不熟悉,則應該閱讀數據庫設計和數據庫規範化。一個好的設計將有助於擴展性,並防止很多令人頭疼和沮喪。

+0

我使用mysql數據庫..我仍然是一個初學者..謝謝反正。但是有沒有辦法用這些表做,而不是在所有表中都有一個共同的字段? – 2011-12-20 06:22:25

相關問題