主键 primary key
表头不允许重复,不允许空值
表头不能赋值为null,且值唯一
各种证件的编号,或者证书编号
主键的
创建
create table db3.t7(
姓名 char(3), age int default 19, 身份证 char(18) primary key
);
create table db3.t7(
姓名 char(3), age int default 19, 身份证 char(18), primary key(身份证)
);
查看
desc 标志是PRI
删除
alter table 库.表 drop primary key ;
desc
alter table 库.表 modify 表头名 char();
添加
alter table 库.表 add primary key(表头名 );
验证功能
复合主键 多个表头一起做主键,表头的值不同时重复即可
查看
一起创建一起删除
创建
主键与auto_increment 连用
自增长 i++ i=i+1
给表头加了自增长的设置后,不给表头赋值时,通过自加1的计算结果赋值,自增长必须和主键连用
truncate 删除带序号的表以及内容
truncate删除行 再添加行 从1开始
外键
给外键表头赋值时,值在参考的主键表头值里选择
MUL(普通索引标志)
外键 参考 主键
创建外键
- create table 库.表(
- 表头列表 ,
- foreign key(表头名) #指定外键
- references 库.表(表头名) #指定参考的表头名
- on update cascade #同步更新
- on delete cascade #同步删除
- )engine=innodb;
create table 库.表a(
表头名列表,
foreign key(表a的表头名) references 库.表b(表b)
);
create table 库.表a(
表头名列表
查看外键
show create table 表名; 可以查看是否有外键 FOREIGN KEY字样
删除外键
alter table db3.gz_tab drop foreign key 外键名;
添加外键
alter table 库.表
add
foreign key(gz_id) references db3.yg_tab(yg_id)
on update cascade on delete cascade;
验证外键:
重要:
添加外键的表格,还是可以赋空值和重复的值,但是可以通过增加主键可以进行屏蔽:
操作如下: