Sqlserver
 sql >> Base de Dados >  >> RDS >> Sqlserver

Motivo para usar @@identity em vez de scope_identity


@@IDENTITY retornará o último valor de identidade emitido pela sessão atual. SCOPE_IDENTITY() retorna o último valor de identidade na sessão atual e mesmo escopo. Eles geralmente são os mesmos, mas assumem que um gatilho é chamado que inseriu algo em algum lugar logo antes da instrução atual. @@IDENTITY retornará o valor de identidade pelo INSERT instrução do gatilho, não a instrução de inserção do bloco. Geralmente é um erro, a menos que ele saiba o que está fazendo.