我有一个包含非主键RequestID的表。当我执行bulkInsert时,所有记录必须具有相同的RequestID 。但是,如果我执行另一个BulkInsert,下一个插入的行必须增加RequestID :
NewRequestID = PreviousRequestID + 1
到目前为止我找到的唯一解决方案 - 我不喜欢它 - 是在插入新记录之前每次都获得最后一条记录。
为什么我不喜欢这种方法?因为数据库应该是关系型的,这意味着“没有特定的顺序”。此外,我没有主键或日期订购。
实施此方法的最佳方法是什么?
(我添加了c#标签,因为我使用EF。如果有一个简单的解决方案,EF)
答案 0 :(得分:1)
您可以采取多种不同的方法:
这些是我想到的一些。
更新:
假设RequestID不是特定类型的标识符,您可以使用时间戳 - 当您执行新批处理时,它将始终递增,但是,我不确定您是否需要它始终以'1'递增'这将排除这种方法。