【发布时间】:2012-09-13 20:33:28
【问题描述】:
我有一个自动递增的主键 OrderHeaderID,但我还需要根据下订单的公司自动递增 OrderNumber。
当前策略:(在我对表格的插入语句中)
(SELECT MAX(OrderNumber) + 1 FROM OrderHeader WHERE CompanyID = @CompanyID)
问题:一旦我开始使用一些音量进行测试,我开始收到重复的键错误:
表格顺序表头:
OrderHeaderID CompanyID OrderNumber
1 1 10000
2 1 10001
3 1 10002
4 2 10000
5 2 10001
6 2 10002
【问题讨论】:
-
你在使用什么 rdbms? sql-server,mysql,oracle?为什么要让订单号依赖于 companyid?
-
我从变量名中假设他正在使用 SQL Server ...重新标记。
标签: sql sql-server auto-increment