@@identityfunktion returnerar den senast skapade identiteten i samma session.scope_identity()funktion returnerar den senast skapade identiteten i samma session och samma omfattning.-
ident_current(name)returnerar den senast skapade identiteten för en specifik tabell eller vy i någon session. identity()Funktionen används inte för att få en identitet, den används för att skapa en identitet i enselect...intofråga.
Sessionen är databasanslutningen. Omfattningen är den aktuella frågan eller den nuvarande lagrade proceduren.
En situation där scope_identity() och @@identity funktioner skiljer sig, är om du har en trigger på bordet. Om du har en fråga som infogar en post, vilket gör att triggern infogar en annan post någonstans, scope_identity() funktionen returnerar identiteten som skapats av frågan, medan @@identity funktionen returnerar identiteten som skapats av utlösaren.
Så normalt skulle du använda scope_identity() funktion.