php - 电子商务系统中 order表中的 order_id 和order_sn的区别
伊谢尔伦
伊谢尔伦 2017-04-10 17:28:54
[PHP讨论组]

order_id 是ID主键
order_sn是订单编号
从我们代码实现上来说 有order_id 就够了 那order_sn存在的意义是啥?
为了前台展示订单信息的时候用? 不展示订单id安全点?
order_sn 的内容问题,有的是时间加自增长位 还有就是规定一串数字加自增长位
对了 我们现在系统的order给order_sn加了索引

伊谢尔伦
伊谢尔伦

小伙看你根骨奇佳,潜力无限,来学PHP伐。

全部回复(5)
巴扎黑

如LS所说,所以id是自增的话,这个是不适合暴露出来的
同时,后期扩展的话,可能会多台数据库,这个id可能都会出现重复的,

sn一般是自己的逻辑运算出来的,所以不会出现这个问题

阿神

你会对外暴露你们的自增的order_id吗?公司内部机密的东西

黄舟

没什么区别,一种自认为安全的处理而已,就像user有id和username,两者除了外观不同外实际上是等价的。非要说区别的话就是一个是顺序的,另一个是无序的,所以有的人认为无序的更安全。

阿神

order_id是自增长;order_sn俗称订单号,订单表里唯一值;

一般作用:

  • 在暴露情况,订单号会比订单id更适合展示给用户,相比而言也会更直观好记

  • 安全考虑。订单号会比订单id相对更安全,毕竟id是自增长,有规律

  • 报表:一般财务,运营,在做统计的时候,订单号会更利于统计

  • 后期数据维护及转移,当牵涉多个表关联的时候,订单号毕竟唯一;订单id自增长,如后期转移数据,id可能会因此变化。但订单号不变化

巴扎黑

订单id是给外部用的,有规律的id会暴漏一些机密信息。如一天的订单量,别人的订单号等。你总不想你的成交量被人直接看到吧?id是主键,自增长,是给数据库用的。

热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号