我目前的任务是在无法更改架构的数据库上进行项目。我需要在需要唯一 ID 的表中插入一个新行,但该结构的原始创建者并未将此值设置为自动增量。为了解决这个问题,我一直在使用类似于:
(SELECT TOP 1 [ID] from [Table] ORDER BY [ID] DESC) + 1
在给出 ID 字段的值时,基本上有一个内部查询。问题是几行下来,我需要我刚刚输入的那个 ID。如果我可以为该列设置一个 SQLParameter 来输出,我可以获得它设置的值,问题是我使用的是 SQL,而不是像我使用其他 SQLParameters 那样的硬值。我不能使用 SQL 来代替一个值吗?
这是一个潜在的大容量交换,所以我宁愿不做 2 个不同的查询(一个用来获取 id,一个用来插入)。