淺談MYSQL主鍵約束和唯一約束的區別

主鍵約束

PRIMARY KRY 主鍵 是唯一的 一張表隻能有一個主鍵
AUTO_INCREMENT 一定要和主鍵連用
主鍵一定是非空的 NOT NULL
特點:不能為空,不重復

##沒有約束
Create table stu0(
Id int 
Name varcahr(50) 
) 
Insert into stu0(name)value(“張三豐”);
##方式一:創建表,並且添加主鍵約束
Create table stu1(
Id int primary key;
Name varchar(50) 
)
##方式二:
Create table stu2(
Id int, 
Name varchar(50),
Primary key(name)
)

成功: insert intostu1(in,name)value(“2,張三豐”);成功
測試一: insert into stu(id,name)value(null,”張三豐”);#失敗,提示不能為空
測試二:
插入重復值:報錯
Duplicate entry’2′ for key ‘PRIMARY’
Select *from stu1;

唯一約束

UNIQUE KEY 唯一約束
唯一約束可以保證數據的唯一性
每張數據表可以有存在多個唯一約束

唯一約束(unique)
 不重復,可以為空

##給名字添加唯一 的約束
 Create table stu3(
 Id int primary key,
 Name varchar(50) unique
)
 Insert into stu3(id,name)value(1,”張三豐”);
 
 Insert into stu3(id,name)value(2,”張三豐”);
 ERROR 1062(23000):Duplicate entry ‘張三豐'for key ‘name'

Insert into stu3(id,name)value(2,”張三”); 

到此這篇關於淺談MYSQL主鍵約束和唯一約束的區別的文章就介紹到這瞭,更多相關MYSQL主鍵約束和唯一約束 內容請搜索WalkonNet以前的文章或繼續瀏覽下面的相關文章希望大傢以後多多支持WalkonNet!

推薦閱讀: