【发布时间】:2022-01-26 11:34:24
【问题描述】:
在我们的网络应用程序 (Java/JDBC) 中,我们使用 MySQL,我们需要它来存储个人支付账单。每张账单必须有一个唯一的账单编号。目前,在存储新票据时,新票据的票据编号通过以下SELECT语句计算:
SELECT COUNT(*) FROM bills;
我的问题:我们如何确保没有两张账单获得相同的账单编号?
【问题讨论】:
-
为什么不使用 UUID?
-
缩放时会失败。让数据库维护计数器。看看w3schools.com/sql/sql_autoincrement.asp
-
@P.Salmon 不错,但不符合我们的要求:对于账单号
x,我们需要生成账单参考号为(x + 100)C,其中C是校验和。