我的 (tableA) 有一个标识字段 (ID),我需要通过一次插入操作一次插入多行,所以我使用表结构作为存储过程的传递参数
我需要按插入顺序插入的 id,所以我在我的 SP 中运行以下查询(tableB 与 tableA 具有相同的结构):
CREATE PROCEDURE ssp_Test
(
tableA tableAType
)
AS
BEGIN
INSERT INTO tableB(field1, field2, ...)
OUTPUT INSERTED.ID
SELECT field1, field2, ... from tableA
END
如果我用 100 条记录运行上述过程,它会返回新的标识字段,并按照它插入到 tableB 的顺序,但是当我用 500 条记录运行它时,所有插入的 id 都返回,但没有合理的顺序,为什么会发生这种情况?
我不需要另一个临时表将它放在那里并对其进行排序并返回,我只想知道它为什么会发生,是否有任何解决方案而不使用额外的临时表进行排序?