To zależy od tego, co próbujesz zrobić...
@@TOŻSAMOŚĆ
Zwraca ostatnią wartość IDENTITY utworzoną w połączeniu, niezależnie od tabeli, która utworzyła wartość, i niezależnie od zakresu instrukcji, która utworzyła wartość. @@IDENTITY zwróci ostatnią wartość tożsamości wprowadzoną do tabeli w bieżącej sesji. @@IDENTITY jest ograniczone do bieżącej sesji i nie jest ograniczone do bieżącego zakresu. Na przykład, jeśli masz wyzwalacz w tabeli, który powoduje utworzenie tożsamości w innej tabeli, otrzymasz tożsamość, która została utworzona jako ostatnia, nawet jeśli to wyzwalacz ją utworzył.
SCOPE_IDENTITY()
Zwraca ostatnią wartość IDENTITY utworzoną w połączeniu i przez instrukcję w tym samym zakresie, niezależnie od tabeli, która utworzyła wartość. SCOPE_IDENTITY() jest podobna do @@IDENTITY, ale ograniczy również wartość do bieżącego zakresu. Innymi słowy, zwróci ostatnią jawnie utworzoną wartość tożsamości, a nie jakąkolwiek tożsamość utworzoną przez wyzwalacz lub funkcję zdefiniowaną przez użytkownika.
IDENT_CURRENT()
Zwraca ostatnią wartość IDENTITY utworzoną w tabeli, niezależnie od połączenia i zakresu instrukcji, która wygenerowała wartość. IDENT_CURRENT jest ograniczone do określonej tabeli, ale nie przez połączenie lub zakres.