今天给项目的一个表设置自增长主键
mysql> ALTER TABLE `users` CHANGE `id` `id` INT(11) NOT NULL AUTO_INCREMENT;
运行却报错 ERROR 1062 (23000): Duplicate entry '1' for key 1
表中原有数据如下
+----+------+
| id | name |
+----+------+
| 0 | AAA |
| 1 | BBB |
| 2 | CCC |
+----+------+-
同事tzngvi说可能是 id = 0 的那条数据有问题,把 id = 0 那条数据删除后,再设置自增长,问题解决。
又去 MySQL 官网查了一下,AUTO_INCREMENT是默认从 1 开始的。
To start with an AUTO_INCREMENT value other than 1, you can set that value with CREATE TABLE or ALTER TABLE, like this:
mysql> ALTER TABLE tbl AUTO_INCREMENT = 100;
分享到:
相关推荐
### MySQL AUTO_INCREMENT 主键详解 在数据库设计与应用中,主键是确保数据表每一行记录唯一性的关键机制之一。而`AUTO_INCREMENT`属性则是在MySQL数据库系统中为某些整数类型的主键自动分配唯一值的功能。下面我们...
MySQL中最简单使用序列的方法就是使用 MySQL AUTO_INCREMENT 来定义列。 实例 以下实例中创建了数据表insect, insect中id无需指定值可实现自动增长。 mysql> CREATE TABLE insect -> ( -> id INT UNSIGNED NOT
在MySQL中,AUTO_INCREMENT是用来指定一个字段为自动增长的字段,通常用于设置主键(primary key)。当向表中插入新记录时,无需手动指定这个字段的值,MySQL会自动为该字段生成一个唯一的递增值。 在Python中,...
主键自增长(AUTO_INCREMENT)
在MySQL数据库中,`auto_increment` 是一个非常重要的特性,它允许系统自动为新插入的行生成唯一的标识符,通常用于主键字段。这个特性在处理大量数据时尤其有用,因为它消除了手动分配唯一ID的需求。本文将详细介绍...
- `auto_increment_increment`:定义了自增字段每次递增的步长,默认值为1,即每次递增1。 - `auto_increment_offset`:设置了自增字段的初始值,默认也为1。这意味着第一条记录的自增ID将是1。 2. **设置自增...
在MySQL数据库中,`auto_increment` 是一个非常重要的特性,它允许在插入新记录时自动为某个整数字段(通常是主键)生成唯一的递增值。当你清空一个具有`auto_increment`字段的表,然后重新插入数据时,可能会发现这...
在MySQL数据库中,自增列(AUTO_INCREMENT)是一种非常有用的特性,它允许表中的某列在插入新记录时自动递增其值。当你需要重置这个初始值时,可能是因为数据库进行了一些清理操作或者需要从特定数值开始重新计数。...
04_auto_increment.avi MYSQL应用 MYSQL视频 MYSQL教程,讲解中连接上一集03集
MySQL中的auto_increment是一种非常实用的属性,用于为表中的记录自动生成唯一的ID。这通常用于主键字段,确保每条记录都可以通过一个唯一的标识符进行区分。然而,auto_increment在处理记录删除、数据库重启以及...
总的来说,解决MySQL双向同步中的键值冲突问题,关键在于利用`auto_increment_offset`和`auto_increment_increment`参数,合理规划每个服务器的自增长ID序列,以确保数据的一致性和完整性。同时,为了保证整个系统的...
标题“blog_auto_increment”暗示了我们讨论的主题与数据库中的自动递增字段有关,这通常用于在插入新记录时自动生成唯一的标识符。在数据库管理中,自动递增(Auto Increment)是一个非常重要的概念,尤其在关系型...
然而,许多初学者误以为自增长特性只能应用于主键,实际上,MySQL允许在非主键列上设置自增长,只要该列被定义为唯一键。 首先,让我们来看看如何创建一个非主键自增长的表。创建一个名为`t1`的表,包含两列`id`和`...
`auto_increment_increment`变量定义了自增长的步长,默认值为1,这意味着每次自增长时数值增加1。而`auto_increment_offset`则设置了初始值,也就是自增长序列的第一个值,默认也是1。 当试图插入一个值X到具有自...
在 MySQL 中,我们可以使用 auto_increment 属性来实现字段的自增长。例如,在创建用户信息表 Userinfo 时,我们可以将 User_ID 字段设置为 auto_increment,以便在插入数据时自动增长: ```sql CREATE TABLE ...
mongoose_auto_increment 创建一个Counter用来记录所有Collections增长数,以Mongoose plugin的方式与对应的Scheme相关联,以此实现Mongoose自动增长列