MySQL 自动增量如何工作?

MySQL 自动增量如何工作?

问题描述:

我刚刚使用 MySQL 查询浏览器创建了一个新表,并注意到 Auto Increment Column 下有一个勾号.这是如何运作的?

I was just creating a new table using MySQL Query Browser, and noticed there's a tick under Auto Increment Column. How does that work?

以编程方式添加到数据库时,我是否只添加一个数字,然后数据库自动增加该数字?

When adding to the database programatically, do I just add a number, and then the database automatically increments that number?

每次有新用户在我的网站上注册时,我都希望他们的客户 ID(仅限整数)自动递增,因此我不必尝试随机生成唯一编号.

Everytime a NEW user registers on my site, I want their Customer ID (integer only) to auto increment, so I don't have to try and randomly generate a unique number.

这可以简单地完成吗?

谢谢!

以编程方式添加到数据库时,我是否只添加一个数字,然后数据库自动增加该数字?

When adding to the database programatically, do I just add a number, and then the database automatically increments that number?

是的,这就是 auto_increment 的工作方式.

Yes, that's the way auto_increment works.

  • 每行增加一个值

  • The value will be incremented for each new row

值是唯一的,不可重复

如果某行被删除,该行的auto_increment列不会被重新赋值.

If a row is deleted, the auto_increment column of that row will not be re-assigned.

最后插入行的auto_increment值可以使用mySQL函数LAST_INSERT_ID()访问,但它必须被调用在插入查询之后,在同一个数据库连接中

The auto_increment value of the last inserted row can be accessed using the mySQL function LAST_INSERT_ID() but it must be called right after the insert query, in the same database connection

mySQL 参考