Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Dotyczy:SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Analytics Platform System (PDW)
Punkt końcowy analizy SQL w usłudze Microsoft Fabric
Hurtownia danych w usłudze Microsoft Fabric
Baza danych SQL w usłudze Microsoft Fabric
Ta funkcja zwraca nazwę określonej bazy danych.
Transact-SQL konwencje składni
Składnia
DB_NAME ( [ database_id ] )
Argumenty (w programowaniu)
database_id
Numer identyfikacyjny (ID) bazy danych, której nazwa DB_NAME zwraca. Jeśli wywołanie DB_NAME pomija database_id lub database_id to 0, DB_NAME zwraca nazwę bieżącej bazy danych.
Typy zwracane
nvarchar(128)
Uprawnienia
Jeśli obiekt wywołujący DB_NAME elementu nie jest właścicielem określonejmaster bazy danych lub innejtempdb niż baza danych, ALTER ANY DATABASE wymagane VIEW ANY DATABASE są co najmniej uprawnienia na poziomie serwera, aby wyświetlić odpowiedni DB_ID wiersz.
master W przypadku bazy danych DB_ID wymagane jest CREATE DATABASE co najmniej uprawnienie.
Baza danych, z którą obiekt wywołujący łączy się, zawsze pojawia się w pliku sys.databases.
Ważne
Domyślnie rola publiczna ma VIEW ANY DATABASE uprawnienie, które umożliwia wszystkim identyfikatorom logowania wyświetlanie informacji o bazie danych. Aby uniemożliwić logowanie się do wykrywania bazy danych, REVOKEVIEW ANY DATABASE uprawnienia z publicznej strony lub DENYVIEW ANY DATABASE uprawnienia do poszczególnych logowań.
Przykłady
Odp. Zwraca bieżącą nazwę bazy danych
Ten przykład zwraca nazwę bieżącej bazy danych.
SELECT DB_NAME() AS [Current Database];
GO
B. Zwracanie nazwy bazy danych określonego identyfikatora bazy danych
W tym przykładzie zwracana jest nazwa bazy danych dla identyfikatora 3bazy danych .
USE master;
GO
SELECT DB_NAME(3) AS [Database Name];
GO
Przykłady: Azure Synapse Analytics and Analytics Platform System (PDW)
C. Zwraca bieżącą nazwę bazy danych
Ten przykład zwraca bieżącą nazwę bazy danych.
SELECT DB_NAME() AS [Current Database];
D. Zwracanie nazwy bazy danych przy użyciu identyfikatora bazy danych
W tym przykładzie zwracana jest nazwa bazy danych i database_id dla każdej bazy danych.
SELECT DB_NAME(database_id) AS [Database],
database_id
FROM sys.databases;