行穩致遠,久久為功!
一個概念套着一個概念哦!碼就是關鍵字,標識屬性是也!
1.什么是主碼和外碼,請舉例說明。
關鍵字也叫碼!
首先,在一個關系中,能惟一標識元組的屬性or最小屬性集稱為關系的候選碼。
包含在任何一個候選碼中的屬性稱為主屬性!
主碼(Primary Key):若一個關系中有多個候選碼,則選其中的一個為主碼。
外碼(Foreign Key):設F是基本關系R的一個或一組屬性
,但不是R的碼(不是候選碼!不是關鍵碼!可以是屬於候選碼這個最小屬性集的一個碼)。Ks是基本關系S的主碼。如果F與Ks相對應,
則稱F是R的外碼。
----------------------------》外碼外碼,外來的碼哦!
舉例:有兩個二維表:
研究生表和導師表
研究生表:研究生編號,......導師編號;
導師表: 導師編號;
研究生編號是研究生表的主碼;
導師編號是導師表的主碼,是研究生表的外碼;
研究生表是參照關系,導師表是被參照關系!
2.什么是實體完整性和參照完整性,請舉例說明?
實體完整性(對主碼中的)規則是指若屬性A是基本關系R的主屬性,則屬性A不能取空值(NULL)。
參照完整性(對外碼的一個限制)規則是:若F是基本關系R的外碼,並與S的主碼Ks相對應,則對於R中的每個元組在F上的值必須為:
取空值or等於S中某個元組的主碼值。
eg:
導師表的關鍵字(候選碼,主碼)是導師編號,學生表的關鍵字是學號!
實體完整性講的說,導師表中的導師編號是不能為空的!學生表中的學號是不能為空的!
參照完整性講的說,學生表中的導師編號是學生表的外碼!其取值可以為空,要么是導師表中已有的值!
3. 關系有哪些基本操作?它們分別對應哪些集合運算?
關系基本操作有:查詢和更新。
查詢:
關系內屬性的指定
關系內元組的指定
關系的合並
更新:
數據的增、刪、改