数据库
首页 > 数据库> > MySQL20

MySQL20

作者:互联网

自动递增

通过AUTO_INCREMENT属性为新行产生唯一的标识;
AUTO_INCREMENT是数据列的属性,只适用于整数类型数据列;
设置AUTO_INCREMENT属性的数据列应该是正数序列,所以把数据列声明为UNSIGNED;
AUTO_INCREMENT的数据列必须有唯一索引;
AUTO_INCREMENT的数据列必须具备NOT NULL属性;
AUTO_INCREMENT值开始是1,每次递增1;
如果把一个NULL插入到一个AUTO_INCREMENT数据列里去,将自动生成下一序列编号;
使用LAST_INSERT_ID()函数来查询最新的自动递增值;

为自动递增列明确赋值

插入记录时,如果为AUTO_INCREMENT数据列明确指定数值,则会出现两种情况:
如果插入的值与已有的编号重复,则会出现出错信息,因为AUTO_INCREMENT数据列的值必须是唯一的;
如果插入的值大于已编号的值,则会把该插入到数据列中,并使在下一个编号将从这个新值开始递增。也就是说,可以跳过一些编号;

-- 自动递增 
CREATE TABLE t9( 
    id SMALLINT UNSIGNED KEY AUTO_INCREMENT, 
    username VARCHAR(20) NOT NULL UNIQUE, 
    age     TINYINT UNSIGNED NOT NULL 
);   
DESC t9;  
INSERT t9(id,username,age) VALUES(NULL,'Tom',26); 
INSERT t9(id,username,age) VALUES(10,'Rose',17); 
INSERT t9(username,age) VALUES('Frank',19); 
SELECT id,username FROM t9; 
SELECT LAST_INSERT_ID(); 

标签:username,INSERT,NULL,t9,AUTO,INCREMENT,MySQL20
来源: https://www.cnblogs.com/sean-test/p/15451478.html