Mysql中Identity有以下几个方面的详细介绍:
一、Identity基本定义
Identity在Mysql中是一个非常重要的属性,用于表示一列的自增长特性。在创建一个表中的一个列时加上“Auto_Increment”参数,就可以将该列设为自增长列。例:
CREATE TABLE `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
这里id列就是一个自增长列,每次插入一条新的数据时,该列会自动加1。
二、Identity用法
Identity有以下两个作用:
1、插入新数据时自动生成唯一标识
当插入新数据时,如果id列被设置为Identity,则Mysql会自动为该列生成一个唯一标识,从而避免两条记录具有相同的id值。例如:
INSERT INTO `test` (`name`) VALUES ('Tom');
此时Mysql会自动为新的记录生成一个唯一的id值。
2、在数据表中添加一列,并指定为自增长列
当在数据表中添加一列时,可以通过Identity设置该列为自增长列。例如:
ALTER TABLE `test` ADD `age` int(11) NOT NULL AUTO_INCREMENT AFTER `name`;
此时在数据表中添加了一个新的age列,并且该列被设定为自增长列。
三、Identity的示例
以下是两个Identity的示例:
示例1:创建一个带有自增长列的表
CREATE TABLE `test` (
`id` int(11) NOT NULL AUTO_INCREMENT,
`name` varchar(50) DEFAULT NULL,
`age` int(11) DEFAULT NULL,
PRIMARY KEY (`id`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4;
在创建表的过程中,将id列设置为自增长列,每次插入新的数据时,id列会自动加1。
示例2:修改现有表中的列,在其中添加自增长属性
ALTER TABLE `test` MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;
在例2中,我们需要在现有的数据表中的id列中添加自增长属性,可以通过ALTER TABLE命令来实现。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Mysql中Identity 详细介绍 - Python技术站