【问题标题】:AUTO_INCREMENT is not working in MariaDBAUTO_INCREMENT 在 MariaDB 中不起作用
【发布时间】:2018-05-11 05:26:06
【问题描述】:

我正在尝试使用MariaDB 中主键的AUTO_INCREMENT 选项创建一个表。这是创建数据库表的示例:

CREATE TABLE mytable (
  id INT NOT NULL AUTO_INCREMENT,
  name VARCHAR(50),
  PRIMARY KEY (id)
) AUTO_INCREMENT=1;

当我尝试插入 rows 时:

INSERT INTO mytable (name) VALUES ('name1'), ('name2'), ('name3');

rows 未按顺序保存(从 1 开始。)

我在这方面搜索了很多,但找不到任何解决方案。

对此有什么想法吗?

编辑:我已经更正了插入查询。刚刚也遵循了 mariadb 文档。甚至行的插入也不是按顺序进行的。 maria db 版本是 10.1.22

CREATE TABLE animals (
  id MEDIUMINT NOT NULL AUTO_INCREMENT,
  name CHAR(30) NOT NULL,
  PRIMARY KEY (id)
);

INSERT INTO animals (name)
VALUES ('dog'), ('cat'), ('penguin'),
       ('fox'), ('whale'), ('ostrich');

SELECT * FROM animals;
+----+---------+
| id | name    |
+----+---------+
|  6 | dog     |
|  9 | cat     |
| 12 | penguin |
| 15 | fox     |
| 18 | whale   |
| 21 | ostrich |
+----+---------+

【问题讨论】:

标签: mariadb


【解决方案1】:

您有 3 节点 Galera 集群吗?这可以解释auto_increment_increment = 3

但是...您不应该依赖 AUTO_INCREMENT 的任何属性,除非值是不同的。

【讨论】:

    【解决方案2】:

    表格创建正确

    但是你的 INSERT 语句写错了

    应该是这样的

    INSERT INTO mytable(name) VALUES ('name1'), ('name2'),('name3');

    用于在表中插入多个数据

    【讨论】:

    • 嗨 Sandeep,对不起我的语法。我编辑了我的问题。该序列无法与 maria db (10.1.22) 一起正常工作
    猜你喜欢
    • 1970-01-01
    • 2016-12-17
    • 2017-11-26
    • 1970-01-01
    • 2022-01-23
    • 1970-01-01
    • 2016-09-08
    • 1970-01-01
    • 2011-01-03
    相关资源
    最近更新 更多