7.5、主鍵約束
主鍵約束相關術語
主鍵約束
主鍵字段:字段添加了主鍵約束,叫主鍵字段
主鍵值:主鍵字段中的每個值都叫主鍵值
什么是主鍵?
主鍵值是每一行記錄的唯一標識(主鍵值是每一行記錄的身份證號)
記住:任何一張表都應該有主鍵,沒有主鍵,表無效
主鍵的特征:not null + unique(主鍵值不能是NULL,同時也不能重復)
如何添加主鍵約束:
drop table if exists t_vip;
create table t_vip(
id int primary key,
name varchar(255)
);
主鍵約束可以使用表級約束?
drop table if exists t_vip;
create table t_vip(
id int ,
name varchar(255)
primary key(id)
);
表級約束主要是給多個字段聯合起來添加約束?
drop table if exists t_vip;
//id和name聯合起來做主鍵:復合主鍵!
create table t_vip(
id int ,
name varchar(255),
email varchar(255),
primary key(id,name)
);
insert into t_vip(id,name,email) values(1,'zhangsan','zhangsan@123.com');
實際開發中不建議使用:復合主鍵,建議使用單一主鍵。
一個表中主鍵約束能加兩個嗎?
drop table if exists t_vip;
//id和name聯合起來做主鍵:復合主鍵!
create table t_vip(
id int ,primary key
name varchar(255),primary key
);
//ERROR 結論:一張表,主鍵約束只能添加一個
主鍵值建議使用:
int
bigint
char等類型
不建議使用:varchar來做主鍵,主鍵值一般都是數字,一般都是定長的。