教育行業(yè)A股IPO第一股(股票代碼 003032)

全國咨詢/投訴熱線:400-618-4000

關系模型的完整性約束包括哪幾部分?

更新時間:2023年06月12日18時02分 來源:傳智教育 瀏覽次數(shù):

好口碑IT培訓

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

(1)域完整性。域完整性是保證數(shù)據(jù)庫字段取值的合理性。域完整性約束包括檢查(CHEC)、默認值(DEFAULT)、不為空(NOT NULL)、外鍵(FOREIGN KEY)等約束??梢詫Σ迦氲淖侄沃颠M行檢查、保證其符合設置的域完整性約束。

(2)實體完整性。實體完整性要求關系中的主鍵不能重復,且不能取空值??罩凳侵覆恢?、不存在或無意義的值。由于關系中的元組對應現(xiàn)實世界中互相之間可區(qū)分的個體,因此這些個體使用主鍵來唯一標識,若主鍵為空或重復,則無法唯一標識每個個體。

(3)參照完整性。參照完整性定義了外鍵和主鍵之間的引用規(guī)則,要求關系中的外鍵要么取空值,要么取參照關系中的某個元組的主鍵值。例如,學生表中的班級號對應班級表中的班級號,按照參照完整性規(guī)則,學生的班級號只能取空值或班級表中已經(jīng)存在的某個班級號。當取空值時表示該學生尚未分配班級,當取某個班級號時,該班級號必須是班級表中已經(jīng)存在的某個班級號。

(4)用戶自定義完整性。用戶自定義完整性是用戶針對具體的應用環(huán)境定義的完整性約束條件,由DBMS檢查用戶自定義完整性。例如,創(chuàng)建數(shù)據(jù)表時,定義用戶名不允許重復的約束。

0 分享到:
和我們在線交談!