首页 > 解决方案 > 如何为从 100 开始并在 MySQL 中递增 5 的数字创建序列?

问题描述

我需要一个 ColumnID 的值,它是一个主键,从 100 开始并以 5 递增。在填充表之前,要求将此条件作为约束包含在内。我已经创建了表,我只需要添加那个约束。我知道我不能使用 AUTO_INCREMENT 因为增加只有 1。有没有办法在 MySQL 中做到这一点?

标签: mysqlsql

解决方案


MySQL 不提供任何内置函数来为表的行或列创建序列。但是我们可以通过 SQL 查询来生成它。

例子:

让我们借助以下示例来理解它。首先,我们需要创建一个新表并确保有一列具有该AUTO_INCREMENT属性,并且该列也作为 PRIMARY KEY。

执行以下查询以创建表:

   CREATE TABLE Insects (  
   Id INT AUTO_INCREMENT PRIMARY KEY,    
   Name VARCHAR(30) NOT NULL,   
   Type VARCHAR(30) NOT NULL,  
   Origin VARCHAR(30) NOT NULL   
);  

然后您可以更改您的列以从另一个值开始:

ALTER TABLE Insects AUTO_INCREMENT=100;

你可以在这里查看


推荐阅读