MySQL高并发生成唯一订单号
前言 这篇博文发布后,有朋友问有没有 SQL server版本 的,现在有了《SQL server高并发生成唯一订单号》 推荐:《mysql教程》 一、场景再现 在一个erp进销存系统或0A等其他系统中,如果多
前言
这篇博文发布后,有朋友问有没有SQL server版本的,现在有了《SQL server高并发生成唯一订单号》
推荐:《mysql教程》
一、场景再现
在一个erp进销存系统或0A等其他系统中,如果多人同时进行生成订单号的操作的话,容易出现多人获得同一个订单号的情况,对公司业务造成不可挽回的损失
二、如何避免高并发情况订单号不唯一
我们可以利用存储过程和数据表搭配,建立一张表和创建存储过程,存储过程负责生成订单号,表负责处理唯一性问题
当存储过程生成一个订单编号,首先先把订单号写进表中,再把订单号结果显示出来,把生成的订单号写进表里会出现两种情况,为什么呢?因为我们的表设置了主键(主键唯一性)