-- 方法1
create table mydb1.emp1(
eid int primary key,
name varchar(20),
deptID int,
salary double
);
-- 方法2
create table mydb1.emp2(
eid int,
name varchar(20),
deptID int,
salary double,
primary key(eid)
);
insert into mydb1.emp2 values
(1,'zhangsan',1,2000),
(2,'lisi',2,1000),
(3,'wangwu',3,4000);
-- 联合primary key (多者之中至少有一个不一样,并且都不能为空)
create table mydb1.emp3(
eid int,
name varchar(20),
deptID int,
salary double,
primary key(name, deptID)
);
insert into mydb1.emp3 values
(1,'zhangsan',1,2000),
(2,'lisi',2,1000),
(3,'wangwu',3,4000);
# 事后再添加主键
create table mydb1.emp4(
eid int,
name varchar(20),
deptID int,
salary double
);
alter table emp4 add primary key(name, deptID);
alter table emp4 drop primary key; #删除主键
drop table mydb1.emp1;
drop table mydb1.emp2, mydb1.emp3;
-- 自增长主键
create table mydb1.t_user1(
eid int primary key auto_increment,
name varchar(20),
deptID int,
salary double
);
insert into mydb1.t_user1 values
(null,'zhangsan',1,2000),
(NULL,'lisi',2,1000),
(null,'wangwu',3,4000);
# 定义自增长开始值
create table mydb1.t_user2(
eid int primary key auto_increment,
name varchar(20),
deptID int,
salary double
)auto_increment = 100;
insert into mydb1.t_user2 values
(null,'zhangsan',1,2000),
(NULL,'lisi',2,1000),
(null,'wangwu',3,4000);
delete from t_user2 #自增长从删除的最后一个开始
truncate t_user2 #同时删除自增长的开始值
drop table mydb1.emp4, mydb1.t_user1, mydb1.t_user2;