这是MySQL表创建的模式。最后一行上的AUTO_INCREMENT=3是什么意思?
CREATE TABLE IF NOT EXISTS `test_b` (
`ID_b` int(10) unsigned NOT NULL AUTO_INCREMENT,
`stuff` varchar(1000) COLLATE utf8_unicode_ci DEFAULT NULL,
PRIMARY KEY (`ID_b`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_unicode_ci AUTO_INCREMENT=3 ;发布于 2012-08-14 06:03:28
这会将初始AUTO_INCREMENT值设置为3。因此,对于第一个插入的记录,它将从3开始,而不是默认从1开始。
来自CREATE TABLE Syntax的手册
表的初始AUTO_INCREMENT值。
对于在CREATE table语句中支持AUTO_INCREMENT TABLE选项的引擎,还可以使用ALTER TABLE tbl_name AUTO_INCREMENT =N来重置AUTO_INCREMENT值。该值不能设置为低于列中当前的最大值。
我听说过这样的情况,人们从一开始就将这个值设置为较大的值,以使其看起来比一开始实际上拥有更多的内容。例如,用户ID 15,000与用户ID 1。
发布于 2012-08-14 06:02:11
显然,它是用来设置起始自动递增的数字的:
http://dev.mysql.com/doc/refman/5.0/en/example-auto-increment.html
https://stackoverflow.com/questions/11942945
复制相似问题