所謂資料完整性是用來確保資料庫中資料的正確性及可靠性。例如在某一個資料表中更新了一筆資料, 則所有用到此資料的地方也都要更新。 資料完整性大致分為下列幾種類型: 實體完整性 (Entity Integrity) 區域完整性 (Domain Integrity) 參考完整性 (Referential Integrity) 使用者定義的完整性 (User-defined Integrity) 實體完整性是為了確保資料表中的記錄是 “唯一” 的。我們設定主鍵就是為了達成實體完整性。 例如每一本書都有一個書籍編號, 不同的書若使用相同的編號是不被允許的, 會被拒絕。 區域完整性是為了確保資料在允許的範圍中。 例如限制某一個整數值欄位的資料範圍在 100~ 999 之間, 若輸入的資料不在此範圍內, 即不符合區域完整性, 會被拒絕。 參考完整性是用來確保相關資料表間的資料一致, 避免因一個資料表的記錄改變, 而造成另一個資料表的內容變成無效值。 使用者定義的完整性 (User-definedIntegrity)指由使用者自行定義, 而又不屬於前面三種的完整性。 例如某個客戶欠款超過 6 個月, 則下次再下訂單時就不賣他, 這就是由使用者定義的完整性限制。