8.SQL的约束条件

约束条件就是在数据类型的基础上再添加限制条件

1. unsigned :去除符号

eg: create table 表名(字段名 数据类型 unsigned)

2.zerofill:零填充

 例如数据类型中字符串的char()为定长,当存入的不足括号中位数时,如果约束条件有zerofill,就用零来填充而不是空格

3. not null:非空

# 在mysql中,‘’与null不一样

4.unique: 唯一

#单列唯一
eg:create table 表名(字段名 数据类型 unique);

#联合唯一
eg:create table 表名(字段一 数据类型,
		     字段二 数据类型,
		    unique(字段一,字段二) );

5.default: 默认值

 如果在插入数据时不存入含默认值字段数据时,存入默认值

6.主键

#单纯从约束条件上来看,主键就相当于not null+unique,是非空且唯一的
InnoDB存储引擎要求每一张表必须要有一个主键,但是你会发现,之前创建的很多张表,也都创建成功了,为什呢,原因是:InnoDB存储引擎内部隐藏的有一个主键字段,但是这个隐藏的字段我们看不到,这个主键的目的主要就是用来帮助我们把表常见成功,仅此而已.

# 我们一般会给id字段添加主键,sid、aid、uid等都可以

7.auto_increment:自增

 默认是让主键每次自动增加一
 
 # 创建表的时候,主键的固定写法:id int primary key auto_increment

清空表的两种方式

1. delete from 表名 # 不会将主键id的值重置
2. truncate 表名 # 会将主键id的值重置为1
# truncate情况表之后, 如果想恢复数据,还可以补救;如何恢复数据:binlog日志,记录了你在数据库中执行SQL语句的变化过程,通过binlog日志可以恢复数据
posted @ 2023-07-14 19:52  苙萨汗  阅读(68)  评论(0)    收藏  举报