软件:
postgre
思路:
基于数据库序列对象生成订单编号:
1.创建一张表
2. 通过 sql 获取序列值
3. 订单号的生成
具体操作:
1.创建表
CREATE TABLE "public"."ds_ddbh_id" (
"id" SERIAL
);
该表只包含一个字段 id 。创建好表就相当于创建了一个序列
ds_ddbh_id_id_seq ,删除表,该序列也会被删除。
2.获取序列值
SELECT nextval('ds_ddbh_id_id_seq');
递增序列对象到它的下一个数值并且返回该值。这个动作是自动完成的。即使多个会话并发运行nextval,每个进程也 会安全地收到一个唯一的序列值。
3.订单号生成
订单号 = 序列号*100+客户编号%100
这样就保证了订单号后两位为00 ~ 99 为后续订单表分表做铺垫。