首頁技術(shù)文章正文

Python培訓(xùn):關(guān)系模型的完整性約束

更新時(shí)間:2022-11-30 來源:黑馬程序員 瀏覽量:

IT培訓(xùn)班

為了保證數(shù)據(jù)庫中數(shù)據(jù)的正確性和相容性,需要對關(guān)系模型進(jìn)行完整性約束。完整性通常包括實(shí)體完整性、參照完整性和用戶自定義完整性,具體解釋如下。


(1)實(shí)體完整性。實(shí)體完整性要求關(guān)系中的主鍵不能重復(fù),且不能取空值。空值是指不知道、不存在或無意義的值。由于關(guān)系中的元組對應(yīng)現(xiàn)實(shí)世界中互相之間可區(qū)分的個(gè)體,這些個(gè)體使用主鍵來唯一標(biāo)識(shí),若主鍵為空或重復(fù),則無法唯一標(biāo)識(shí)每個(gè)個(gè)體。


(2)參照完整性。參照完整性要求關(guān)系中的外鍵要么取空值,要么取被參照關(guān)系中的某個(gè)元組的主鍵值。例如,通過學(xué)生所屬的班級號(hào)可以找到對應(yīng)的班級,這就符合參照完整性;而如果對應(yīng)的班級被刪除了,學(xué)生通過班級號(hào)找不到班級,就不符合參照完整性。


(3)用戶自定義完整性。用戶自定義完整性是用戶針對具體的應(yīng)用環(huán)境定義的完整性約束條件,由DBMS檢查用戶自定義的完整性。例如,用戶名不允許重復(fù)。

分享到:
在線咨詢 我要報(bào)名
和我們在線交談!