SQL之字段属性(2)

一、自动增长

·定义:auto increase,当给定某个字段该属性后,该列的数据在没有提供确定数据的时候,系统会根据之前已经存在的数据进行自动增长后,填充数据。

自动增长主要用于逻辑主键。

·原理
1.在系统中有维护一组数据,用来保存当前使用了自动增长属性的字段,记住当前对应的数据值,再给定一个指定的步长
2.当用户进行数据插入的时候如果没有给定值,系统在原始值上再加上步长变成新的数据。
3.自动增长的触发,给定属性的字段没有提供值。
4.自动增长只适用于数值

·使用自动增长
基本语法:在字段之后增加一个属性auto_increment
在这里插入图片描述
插入数据:触发自动增长,不能给定具体值。
在这里插入图片描述
·修改自动增长
1.查看自增长;自增长一旦触发使用之后,会自动的在表选项中增加一个选修(一张表最多只能拥有一个自增长)
在这里插入图片描述
2.表选项可以通过修改表结构来实现
alter table 表名 auto_increment = 值;
在这里插入图片描述

·删除自动增长
删除自增长:就是在字段属性之后不再保留auto_increment,当用户修改自增长所在字段时,如果没有看到auto_increment属性,系统会自动清除该自增长。
在这里插入图片描述
·初始设置
在系统中,有一组变量用来维护自增长的初始值和步长。
基本语法:
show variables like ‘auto_increment%’;
在这里插入图片描述
·细节问题
1、一张表只有一个自增长;自增长会上升到表选项中。
2、如果数据插入中没有触发自增长,那么自增长不会表现
在这里插入图片描述
在这里插入图片描述
3、自增长修改的时候,值可以较大,但是不能比当前已有的自增长字段的值小。
在这里插入图片描述

二、唯一键(unique key)

用来保证对应的字段中的数据唯一的。

主键也可以用来保证字段数据的唯一性,但是一张表只能有一个主键。

1.唯一键在一张表中可以有多个。
2.唯一键允许字段为null,null可以有多个(null不参与比较)

·创建唯一键
1.直接在表字段之后增加唯一键标识符:unique[key]
在这里插入图片描述
2.在所有的字段之后使用unique key(字段列表);
在这里插入图片描述
3.在创建完表之后也可以增加唯一键。
基本语法:
alter table 表名 add unique key(字段列表)
在这里插入图片描述
·查看唯一键
唯一键是属性,就可以通过查看表结构来实现。 在这里插入图片描述
唯一键的效果:在不为空的情况下,不允许重复。
在这里插入图片描述
在查看表创建语句时,会看到与主键不同的一定,会多出一个名字。
在这里插入图片描述
·删除唯一键
一个表中允许存在多个唯一键:假设命令为主键一样:alter table 表名 drop unique key;//是错误的语法

删除的基本语法:alter table 表名 drop index 唯一键名字;
在这里插入图片描述
index关键字:索引,唯一键是索引一种(提升查询效率)

修改唯一键:一般是先删除后增加

·复合唯一键

唯一键与主键一样,可以使用多个字段共同保证唯一性。

一般主键都是单一字段(逻辑主键),而其他需要唯一性的内容都是由唯一键来处理。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值