CREATE TABLE `tblspmaster` (
`CSN` bigint(20) NOT NULL AUTO_INCREMENT,
`SP` varchar(50) NOT NULL,
`FileImportedDate` date NOT NULL,
`AMZFileName` varchar(580) NOT NULL,
`CasperBatch` varchar(50) NOT NULL,
`BatchProcessedDate` date NOT NULL,
`ExpiryDate` date NOT NULL,
`Region` varchar(50) NOT NULL,
`FCCity` varchar(50) NOT NULL,
`VendorID` int(11) NOT NULL,
`LocationID` int(11) NOT NULL,
PRIMARY KEY (`CSN`)
) ENGINE=InnoDB AUTO_INCREMENT=20018215 DEFAULT CHARSET=latin1;
表架构中AUTO_INCREMENT = 20018215的含义是什么?当我插入500k
条记录时,我的身份从1到500k
是正常的,但当我尝试插入下一条500k
条记录时,下一条记录标识列值为524281
而不是{ {1}}。
答案 0 :(得分:2)
这意味着第一个自动分配的值(到CSN
)将为20018215
答案 1 :(得分:0)
当您执行“发送到SQL编辑器”时,大的初始值20018215可能是自动增量的先前值 - > MySQL Workbench中的“Create Statement”菜单选择。这只是一个安全的值,可以跳过现有数据,以防你必须重新导入以前的记录。
我有同样的问题,但在从已知表生成多个“创建”编辑模板后,我注意到AUTO_INCREMENT值对应于这些表中现有记录的数量。我从模板中删除了大值,因为我希望我的新表以主键= 1开始。