自动递增/身份可以检测值本身吗?

Auto increment/ Identity possible to detect values itself?

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

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

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

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

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

如果否:您可以使用语句

插入 ID 值
SET IDENTITY_INSERT ProcessList ON;

但是您必须确定,没有重新插入现有的 ID 值。

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

SELECT MAX(TransactionID) + 1 FROM ProcessList

使用 Identity(x,y) 你可以说出增量从哪里开始 (y)。你是这个意思吗?