MySQL數據完整性mysql
一、實體完整性sql
實體就是顯示世界中的一個對象,數據庫中的每一行就表明一個實體。所謂實體完整性就是每個實體都能被區別。因此,實現實體完整性通常經過主鍵約束、惟一約束或表示列屬性。 數據庫
-- primary key:關鍵字,保證指定列的數據不可重複,不可爲空。一張表只能定義一個主鍵。 -- auto_increment:關鍵字,能夠在添加一條記錄時,自動爲該行添加數值,並且是自動增加的。 id int(11) primary key auto_increment;
二、域完整性spa
主要指列的輸入要有效,可經過限制列的數據類型、格式或值的範圍來實現。 code
-- unique:惟一約束,指定某列或者幾列組合不能重複。 -- not null:關鍵字,指定列不能輸入null值 -- default:關鍵字,一條數據產生時若是沒有輸入一個列的值,那麼咱們能夠指定一個默認值 name varchar(50) not null unique default '';
三、引用完整性對象
主要是表與表的關係,可經過外鍵實現。rem
tid int(11) references test(id);
四、用戶自定義完整性it
通常經過check約束,但mysql能夠使用可是沒有效果。class