自动增量/身份可以自己检测值吗?

时间:2015-10-06 06:43:32

标签: sql sql-server excel increment identity

我有这个表ProcessList,其中TransactionID值应该在添加行时自动递增。

我可以从Excel文件将数据导入此表。是否可以对其进行编码,以便自动检测开始增量的值?或者至少不使用硬代码,因为Excel可能包含我不知道的任何行数。

我不确定SQL中的auto_increment或identity函数是否更适合我打算做的事情?

ProcessList table

2 个答案:

答案 0 :(得分:0)

首先要确定的是,您的EXCEL数据中的现有ID值是否可能被丢弃。

如果是:只需在插入时排除此列。数据库将自行添加运行ID。

如果否:您可以使用语句

插入ID值
SET IDENTITY_INSERT ProcessList ON;

但您必须确保不会重新插入现有的ID值。

如果您想获得最高ID并自行执行插入逻辑,可以使用

SELECT MAX(TransactionID) + 1 FROM ProcessList

答案 1 :(得分:0)

使用Identity(x,y),您可以说出增量开始的位置(y)。那是你的意思吗?