【发布时间】:2011-05-22 22:55:23
【问题描述】:
我正在考虑这样格式化它
TYYYYMMDDNNNNNNNNNNX (1 个字符 + 19 位数字)
在哪里
- T 是类型
- YYYY是年份
- MM 是月份
- DD是一天
- N 是序号
- X 是校验位
问题是,如何生成序号?因为我的主键不是一个自动递增的整数值,如果是我会使用它,但它不是。
编辑我可以让序列号在 1 天(24 小时)后自行重置。
- P201012080000000001X
- P2010120810000000002X
- P201012090000000001X
(X为校验位)
【问题讨论】:
-
你能用一个文件吗?只需获取数字,然后将其递增并保存?
-
您的并发要求是什么,是否有其他限制(例如,序列号中没有间隙?)?
-
您可以简单地存储分解的字符串的每个元素,这将需要另外 6 个 db 字段(必须是主键),但这会简化生成字符串的过程,因为您可以检查如果今天有订单并相应地设置序号。然后处理这 6 个字段以构建输出字符串。
-
你能添加架构吗?例如,您是否已经提交了类型和日期?
-
你想在哪里完成这个?这个问题的标签留下了相当广泛的可能性......你能描述一下完整的解决方案吗?
标签: c# php asp.net sql-server