一、Primary Key和Unique
Primary Key和Unique 都是一種約束(Constraint)讹挎,都不允許列種存在重復(fù)值,不同的是:
- Primary Key:一個(gè)表只能有一個(gè) PRIMARY KEY 約束马篮,不允許有空值
- Unique :一個(gè)表可以有多個(gè) UNIQUE 約束怜奖,允許存在空值
當(dāng)向表中插入數(shù)據(jù)時(shí),如果有約束列中有重復(fù)值歪玲,會(huì)報(bào)錯(cuò)
1062 - Duplicate entry '1' for key 'stuid'
表已經(jīng)創(chuàng)建好之后添加Primary Key和Unique 約束
Alter table 表名稱
add constraint 約束名稱 primary key (列名稱)掷匠;
Alter table 表名稱
add constraint 約束名稱 unique(列名稱)岖圈;
刪除Primary Key和Unique 約束
Alter table 表名稱
drop primary key;
Alter table 表名稱
drop index unique約束名稱;
創(chuàng)建約束時(shí)沒有定義約束名募强,如何刪除約束崇摄?
第一步:輸入以下語句,從CONSTRAINT_NAME 列找到系統(tǒng)自動(dòng)定義的約束名
Select * from INFORMATION_SCHEMA.KEY_COLUMN_USAGE;
第二步:刪除約束
二逐抑、Index
create index 語句用于為表創(chuàng)建索引,目的是為了提高查詢速度进每。
創(chuàng)建一個(gè)簡(jiǎn)單的索引命斧,允許有重復(fù)值
Create index 索引名稱
on 表名稱(需要索引的列);
創(chuàng)建一個(gè)唯一的索引贤徒,兩行不允許擁有重復(fù)的索引值
Create unique index 索引名稱
on 表名稱(需要索引的列)汇四;
三、Primary Key 和Unique Index
創(chuàng)建primary key約束的同時(shí)會(huì)創(chuàng)建一個(gè)unique index通孽。