2007年12月24日 星期一

[DataBase]關於外鍵

從ER圖到建立真正的資料庫
很多關係都被置換成了外鍵
外鍵到底有什麼作用?
答案在於保持數據的一致性
預防在修改數據的時候
發生了A表格參照的B表格的某數據遺失或是沒有此數據發生
而且似乎提供了好用的串聯更新??(這部份還在找資料...XD

接下來談談如何建立外鍵
MYSQL來說
为了建立兩個MySQL表之間的一個外鍵關係,必須滿足以下三種情况:
1.兩個表必須是InnoDB表類型。
2.使用在外鍵關係的域必須為索引型(Index)。
3.使用在外鍵關係的域必須與數據類型相似。

第1點在PHPMYADMIN中
可以在表格建立得時候儲存引擎裡修改
或是在表格建立後
在點選表格後->點選管理裡面可以看到

第2點是說
A表格的ID參考到B表格的ID
A.ID跟B.ID都要為INDEX
之後
在PHPMYADNIN中
點選關聯檢視就可以新增外鍵
或是直接輸入SQL語法就可以建立

第3點應該不用說了吧...
大致上就這樣...

沒有留言: