主键(PRIMARY KEY)初步定义以及操作:
单列主键的使用:
-- 约束:1主键 的使用方法primary key -- 单列主键的使用 需要注意的是,每一张的表有且仅仅只能够有一个主键的存在 -- 主键约束作用:能够让这一列的数据非空,并且不能够是重复的,是唯一的. -- 只要体现在使用DML进行添加数据的时候会有作用,约束 use mysql2; -- 主键的两种使用方式,一:直接在创建表的时候在某个行结尾进行约束 create table yueshu( NAME varchar(20), id int PRIMARY KEY, -- address varchar(20), gender varchar(2) ); -- 方法2:在结尾处直接进行添加约束 -- create table yueshu( -- NAME varchar(20), -- id int , -- address varchar(20), -- gender varchar(2), -- PRIMARY key (id) -- );
联合主键的使用:
-- 联合主键的使用:同样的,也是需要满足仅仅是只有一个主键的存在,而不能够有多个的联合主键存在 create table yueshu( NAME varchar(20), id int , -- address varchar(20), gender varchar(2), primary key(id,name) ); insert into yueshu(name,id,gender) VALUES('张三',1001,'男'); insert into yueshu(name,id,gender) VALUES('张三',1002,'男'); insert into yueshu(name,id,gender) VALUES('李四',1002,'男'); insert into yueshu(name,id,gender) VALUES(null,1001,'男'); insert into yueshu(name,id,gender) VALUES(null,null,'男'); -- 显然对于联合主键来讲,只要不是两个约束的列完全一样,都能够进行输入, -- 但是,对于经过在表当中约束过后的,都必须满足不是null的,及时的联合主键,也都必须满足是 -- 非null的,哪怕仅仅只有一个约束的列是null,而不是全部都是null,也一样会报错 -- 三:另外一种添加约束的方法,即使忘记了在表中添加约束,也能在表外面进行约束 -- 并且,这种添加约束的方式可以是单列约束,也可以是联合主键约束 drop table yueshu; create table yueshu( NAME varchar(20), id int , -- address varchar(20), gender varchar(2) ); alter table yueshu add primary key(id,name); -- 在结尾的地方,可以仅仅只添加一列,也可以同时添加多列进行 -- 对于表格当中的主键约束进行删除的操作,仅仅只能够删除全部的主键约束,而不能够仅仅针对个别的主键约束
主键的删除操作(包括单列以及联合主键都能够进行使用) :
-- 进行删除操作(单列以及联合主键都可以进行使用) alter table yueshu drop PRIMARY key;