@@ IDENTITY против SCOPE_IDENTITY () против IDENT_CURRENT [sql server 2005] - PullRequest
1 голос
/ 28 января 2010

Что я должен использовать, чтобы получить последний вставленный идентификатор записи в SQL Server 2005?

Я искал stackoverflow и нашел это,

SQL: Как получить идентификатор только что введенного значения?

Комментарий лучшего ответа:

есть известные ошибки с SCOPE_IDENTITY () в sql server 2005, не уверенный в 2008, предложение OUTPUT может вернуть набор идентификаторов, если это необходимо ...

Select SCOPE_IDENTITY() as Id from Table

Я использую SQL Server 2005 ... Любое предложение

Ответы [ 2 ]

4 голосов
/ 28 января 2010

Триггеры

Использование @@identity зависит от того, что в вашей базе данных нет триггеров, создающих записи в других местах.

Если вы создаете запись, но триггер затем создает запись журнала для создания, @@identity вернет вам идентификатор записи журнала в таблице журнала.

0 голосов
/ 28 января 2010

Я не совсем уверен, какими должны быть эти "известные ошибки" в SCOPE_IDENTITY (). Единственное, о чем я сейчас знаю, это здесь: Шесть причин, по которым вы должны нервничать по поводу параллелизма , упоминается в качестве самого первого пункта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...