SQL Sqlalchemy主键自动递增失败



当我运行desc features

+-------+--------------+------+-----+---------+----------------+
| Field | Type         | Null | Key | Default | Extra          |
+-------+--------------+------+-----+---------+----------------+
| id    | int(11)      | NO   | PRI | NULL    | auto_increment |
| name  | varchar(128) | YES  | UNI | NULL    |                |
+-------+--------------+------+-----+---------+----------------+

下面有一个表,

+-----------+----------------------------------------------------------+
| id        | name                                                     |
+-----------+----------------------------------------------------------+
| 105314659 | latitude                                                 |
| 105314658 | final                                                    |
+-----------+----------------------------------------------------------+

我运行INSERT INTO features (name) VALUES ('test'),它没有给自动增加主键,如

+-----------+----------------------------------------------------------+
| id        | name                                                     |
+-----------+----------------------------------------------------------+
| 109728684 | test                                                     |
| 105314659 | latitude                                                 |
| 105314658 | final                                                    |
+-----------+----------------------------------------------------------+
+-----------+----------------------------------------------------------+
| id        | name                                                     |
+-----------+----------------------------------------------------------+
| 109728690 | test5                                                    |
| 109728688 | test4                                                    |
| 109728687 | test3                                                    |
| 109728686 | test2                                                    |
| 109728684 | test                                                     |
| 105314659 | latitude                                           |
| 105314658 | final                                                    |
+-----------+----------------------------------------------------------+

有人有什么想法吗?谢谢!

***本表为deleteinsertBTW常数。但是当我运行单插入时,它没有自动增量id***

这篇文章来自

INSERT INTO nlp_request_feature_types (name) VALUES ('test4');

它会导致exc.IntegrityError,比如ERROR 1062 (23000): Duplicate entry 'test4' for key 'features.ix_features', BUT id = 109728689,将被分配。

那么下次运行INSERT INTO nlp_request_feature_types (name) VALUES ('test5');时,它将成功保存到表中,并且主键id =109728690

因此,它会给我们一种错觉,即auto-incremental主键不起作用。然而,它确实有效,只是因为我们的错误ERROR 1062消耗了一个id。

最新更新