【发布时间】:2014-04-17 09:57:27
【问题描述】:
我正在尝试创建一个订购系统并创建一个唯一的序列号来区分订单,它运行良好,直到有一次同时有订单(差异仅以秒为单位,大约 10 秒)和然后唯一的序列号变得相同(序列号从db中的最后一个序列号递增)。
我正在根据某种格式创建 id,它必须每月重置,所以我不能使用 uniqid()。
你们对此有什么想法吗?我读到了一些数据库锁定,但是当我尝试这个解决方案 "Can we lock tables while executing a query in Zend-Db" 时它也没有用。
---编辑---
格式是
projectnumber-year-本月订单数
本月订单数为 4 位数字,从 0001 开始到 9999 9999 之后会从 A001 ... A999 B001 ... ZZZZ 重新开始
这是专栏
| order_id | varchar(17) | utf8_general_ci |否 |优先级 |
我希望这让现在更清楚:)
谢谢!
【问题讨论】:
-
你能展示你用来创建唯一 id 的语句以及你的表结构吗?
-
@DanFromGermany 我已经添加了更多细节,请参阅编辑后的问题。谢谢!