Za pomocą funkcji systemu
Funkcje systemu Włącz dostęp do informacji z SQL Server tabele systemowe bez uzyskiwania dostępu do tabele systemowe bezpośrednio.
Nazwy niektórych Transact-SQL funkcje systemowe zaczynają się dwóch przy znaków @@.Chociaż w starszych wersjach SQL Server @@ funkcje są określane jako zmienne globalne, zmienne nie są i nie mają takie samo zachowanie jako zmienne.Funkcje @@ są funkcje systemowe i ich użycia składni następują reguły dla funkcji.
Każdy następujące pary funkcje systemowe baz danych, hosty, obiekty, logowania i użytkowników zwraca nazwę, gdy podany identyfikator (ID) i zwraca identyfikator, gdy nazwa:
DB_ID i DB_NAME
HOST_ID i HOST_NAME
OBJECT_ID i nazwa_obiektu
SUSER_ID i SUSER_NAME (lub SUSER_SID i SUSER_SNAME)
USER_ID i nazwa_użytkownika
Na przykład, aby uzyskać numer identyfikacyjny bazy danych, funkcja DB_ID zamiast wybierz z sysobjects tabela.
Poniższy przykład ilustruje sposób pobrać nazwy użytkownika bieżącego użytkownika, który jest zalogowany przy użyciu SQL Server uwierzytelniania:
SELECT SUSER_NAME();
Następujące funkcje są podobne, ale nie występują one w parach uzupełniające i podejmą więcej niż jeden parametr wejściowy:
COL_LENGTH
Zwraca długość kolumna, ale nie długości wszystkie poszczególne ciągi przechowywane kolumna.Funkcja DŁUGOŚĆ_DANYCH ustalenie całkowitej liczby znaków w określonej wartości.
Poniższy przykład zwraca długość kolumna i długość danych LastName kolumna w Employees tabela:
SELECT COL_LENGTH('Employees', 'LastName') AS Col_Length, DATALENGTH(LastName) AS DataLength FROM Employees WHERE EmployeeID > 6;
COL_NAME
Zwraca nazwę kolumna.
INDEX_COL
Zwraca nazwę kolumna indeksu.
Zaleca się używać funkcje systemowe informacji schematu widoków, lub procedury składowane w systemie uzyskać informacje o systemie bez bezpośrednio badanie tabele systemowe.Tabele systemowe można zmienić znacznie między wersjami SQL Server.
Zobacz także