@@identityфункцията връща последната самоличност, създадена в същата сесия.scope_identity()функцията връща последната самоличност, създадена в същата сесия и същия обхват.ident_current(name)връща последната създадена самоличност за конкретна таблица или изглед във всяка сесия.identity()функцията не се използва за получаване на идентичност, тя се използва за създаване на идентичност вselect...intoзаявка.
Сесията е връзката към базата данни. Обхватът е текущата заявка или текущата съхранена процедура.
Ситуация, при която scope_identity() и @@identity функциите се различават, ако имате тригер на масата. Ако имате заявка, която вмъква запис, което кара тригера да вмъкне друг запис някъде, scope_identity() функцията ще върне самоличността, създадена от заявката, докато @@identity функцията ще върне самоличността, създадена от тригера.
Така че обикновено ще използвате scope_identity() функция.