首页 > 解决方案 > 根据另一列的更新更新具有自动增量 ID 的列

问题描述

我有一个以下格式的 MySQL 表,其中 A 列总是用 now() 更新,所以更新总是按时间升序排列。

Column A (Datetime)             Column B (varchar)
NULL                            NULL
NULL                            NULL
NULL                            NULL

现在,每当 A 列被更新时,B 列应该有一个从最后一个值生成的自动增量 ID 并更新。

Column A                        Column B
NULL                            NULL  
23-12-2018                      1
NULL                            NULL                     

接着

Column A                        Column B
01-01-2019                      2  
23-12-2018                      1
NULL                            NULL
NULL                            NULL

等等..

有没有办法做到这一点?

另外,我听说如果发生故障,可能会跳过自动增量 ID。

由于这是用于生成发票,因此我不能冒险跳过 ids。

编辑:这些是简单的列,不包含主 ID,这当然是一个自动递增的唯一 ID。我在这里排除了主键列。

目的是在数据库中创建草稿订单,并在完成后生成一个唯一的增量订单 ID,而不会跳过。

标签: mysqlauto-incrementdatabase-triggerinvoice

解决方案


推荐阅读