目录
一:mysql的主键
1.1 定义
主键(primary key)的完整称呼是主键约束。mysql主键约束是一个列或者列的组合,其值能够唯一标示表中的每一行,这样的一列或者多列称为表的主键,通过它可以强制表的实体完整性。
1.2 主键约束字段的选取
- 每个表只能定义一个主键
- 主键值必须唯一标识表中的每一行,且不能为null,即表中不可能存在两行数据相同的主键值。这是唯一性原则。
- 一个列名只能在复合主键列表中出现一次。
- 复合主键不能包含不必要的列。
2 设置主键约束
2.1 在创建表的时候指定主键
语法:<字段名> <数据类型> primary key
create table tb_name
(id int(11) primary key,
name varchar(50)
)
2.2 在定义完所有列之后,指定主键
语法格式为:primary key 字段名
create table table_name
(
id int(11),
name carchar(20),
primary key (id)
);
2.3 在修改表的时候添加主键约束
语法:alter table 数据表名 add primary key (列名);
alter table table_name add primary key (id)
三:truncate和delete的区别
truncate :
- 删除表中的内容,不删除表结构,释放空间;
- truncate删除数据后重新写数据会从1开始;
- truncate删除速度较快;
- truncate和drop都属于ddl语句,不可以回滚
- 语法: truncate 表名
delete :
- 删除内容,不删除表结构,但不释放空间;
- delete删除数据后只会从删除前的最后一行续写;
- delete属于dml语句,可以进行回滚
- 语法: delete from 表名(where...可写可不写)。
参考:
https://www.cnblogs.com/ccstu/p/12159895.html