在我的一个 mysql 表中,我需要生成长度为 15 位的主键字段。
Structure is 2+2+2+2+2+5 as ex: 010101010100001.
前 10 位数字值来自五个 2 位表单/输入字段,最后 5 个字符是唯一且增量的。因此,每当提交表单/数据时,该值都会增加。
现在我该如何实现这一目标?
我想到以下方法,但想到2个问题:
First use select query to get the last used id/number. Then add +1 to it.
**
问题-1:
为此,我必须进行 2 个查询 1 用于选择,1 用于更新,但我认为有比这更好的方法吗?
问题-2:
如果多个用户(如数百/数千个(同时提交表单怎么办? 如何确保它是唯一的并且不会导致数据库错误?
任何建议/想法将不胜感激。
拥有唯一/主键可确保数据库中不能有任何重复的条目。如果您尝试创建重复的条目,您将收到来自 MySQL 的错误消息。因此,您无需检查重复项,MySQL将为您执行此操作。但是,您必须检查错误消息并通过更改值(例如在其上添加+1
(来做出相应的反应,具体取决于您的要求。