mysql - 根据另一列的更新更新具有自动增量 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,而不会跳过。
解决方案
推荐阅读
- database-design - 如何处理“可选”循环引用
- linux - 无法在适用于 Linux 的 Windows 子系统上使用 gdb 在 VS Code 上调试 C
- html - 大型表情符号在 chrome 和移动浏览器上被切断
- ruby-on-rails - 如何每天更改链接的路径
- ruby-on-rails - 了解活动记录查询
- postgresql - 在 Postgres 中搜索和更新 JSON 数组元素
- java - 什么是 FrontController 设计模式?DispatcherServlet 使用了多少级别?
- ruby-on-rails - Rails:从数据库到 TEXTAREA 的 JSON 往返在第二次保存时转换为字符串
- cjk - Postgresql 将日文全角转换为半角
- c++ - 两个单独文件中另一个类的类方法朋友