忽略我的表中的值AUTO_INCREMENT SQL会对我当前的内容产生影响吗?
答案 0 :(得分:1)
不,它不会。
15char
答案 1 :(得分:0)
没有..这不会影响任何事情.. AUTO_INCREMENT函数用于make array number..it使得所有已经自动输入的数据顺序...并且还计数从1,2,3,... n ..
答案 2 :(得分:0)
不,它不会。 AUTO_INCREMENT将保留一个计数器,以便您可以插入行而不指定该列的值。
如果忽略AUTO_INCREMENT并明确说明列的值,则计数器将更新。没有显式值的下一个插入将考虑前一个插入 - 您不会冒重复值。
测试用例:
创建表格:
CREATE TABLE `counter` (
`1` int(11) NOT NULL auto_increment,
PRIMARY KEY (`1`)
) ENGINE=InnoDB DEFAULT CHARSET=utf8 COLLATE=utf8_bin AUTO_INCREMENT=1 ;
插入一行,但不说明值:
INSERT INTO `test`.`counter` (`1` ) VALUES (NULL);
现在会有一行,值为1。
插入另一行,而不说明值:
INSERT INTO `test`.`counter` (`1` ) VALUES (NULL);
现在会有两行,1和2。
在明确说明值时插入一行:
INSERT INTO `test`.`counter` (`1` ) VALUES ('8');
您现在将有三行,1,2,8
现在插入另一行而不说明值:
INSERT INTO `test`.`counter` (`1` ) VALUES (NULL);
新行的值不是3或4,而是正确的值9:
SELECT * FROM `counter`;
1
2
8
9