看了一個晚上的主鍵跟外鍵

在傳智播客學習了很久了,一直搞不懂主鍵跟外鍵的關係,看了很多資料,特別是msdn上的,真長,看一會就頭暈了,然後就找資料

最後找到了幾個講解的比較簡單一些的關於主鍵跟外鍵的定義

http://msdn.microsoft.com/zh-cn/library/ms179610.aspx  msdn上的解釋太長了,沒耐心看完



主鍵的定義:要求主鍵列數據唯一,並且不允許爲空! 外鍵的定義:用於在兩表之間建立關係,需要指定引用主表的那一列!


通俗的說吧 先說說主鍵(primary key)吧:一張表(關係)的一個列(屬性)或多個列可以作爲主鍵,但是前提是讓這個列作主鍵,這個列就能保證該列下的各個行(元組)的值不能相同,比如說你用姓名屬性作主鍵的話,那麼這個主鍵就不一定可以,如果有兩個人是同樣的名字的話,就不能做到該屬性下的各個元組數據的值不同,如果用阿拉伯數字作主鍵就是一個很好的選擇。 再說說外鍵(foreign key):一張表(關係)的列(屬性)它同時存在表1和表2中,它不是表1的主鍵,而是表2的主鍵,就可以說他是表1的外鍵。 那麼什麼是候選鍵(Candidate Key)呢:能唯一標識表(關係)中行(元組)的列(屬性),則稱該屬性爲候選鍵,也稱 候選關鍵字 或 候選碼;由此來看候選鍵可以不只一個,還看一看得出的就是主鍵同時它也是候選鍵

用這來看比較簡單一些一目瞭然,感謝傳智播客學習的日子,嘻嘻,又明白了一個東西

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章