Observação
O acesso a essa página exige autorização. Você pode tentar entrar ou alterar diretórios.
O acesso a essa página exige autorização. Você pode tentar alterar os diretórios.
Aplica-se a:SQL Server
Banco de Dados SQL do Azure
Instância Gerenciada de SQL do Azure
Azure Synapse Analytics
Analytics Platform System (PDW)
Ponto de extremidade de análise de SQL no Microsoft Fabric
Depósito no Microsoft Fabric
Banco de dados SQL no Microsoft Fabric
Essa função retorna o nome de um banco de dados especificado.
Convenções de sintaxe de Transact-SQL
Sintaxe
DB_NAME ( [ database_id ] )
Argumentos
database_id
O número de identificação (ID) do banco de dados cujo nome DB_NAME retorna. Se a chamada para DB_NAME omitir database_id ou a database_id for 0, DB_NAME retornará o nome do banco de dados atual.
Tipos de retorno
nvarchar(128)
Permissões
Se o chamador DB_NAME não possui um banco de dados específicomaster ou nãotempdb, ou ALTER ANY DATABASE permissões no nível do servidor são necessárias, no mínimo, VIEW ANY DATABASE para ver a linha correspondenteDB_ID.
Para o master banco de dados, precisa DB_ID de CREATE DATABASE permissão no mínimo.
O banco de dados ao qual o chamador se conecta sempre aparece sys.databases.
Importante
Por padrão, a função pública tem a permissão VIEW ANY DATABASE, que permite que todos os logons vejam informações do banco de dados. Para impedir a detecção de um banco de dados por um logon, aplique REVOKE na permissão VIEW ANY DATABASE da função pública, ou aplique DENY na permissão VIEW ANY DATABASE para logons individuais.
Exemplos
a. Retornar o nome do banco de dados atual
Este exemplo retorna o nome do banco de dados atual.
SELECT DB_NAME() AS [Current Database];
GO
B. Retornar o nome do banco de dados de uma ID de banco de dados especificada
Este exemplo retorna o nome do banco de dados para a ID de banco de dados 3.
USE master;
GO
SELECT DB_NAME(3) AS [Database Name];
GO
Exemplos: Azure Synapse Analytics e PDW (Analytics Platform System)
C. Retornar o nome do banco de dados atual
Este exemplo retorna o nome do banco de dados atual.
SELECT DB_NAME() AS [Current Database];
D. Retornar o nome de um banco de dados usando a ID de banco de dados
Este exemplo retorna o nome do banco de dados e database_id para cada banco de dados.
SELECT DB_NAME(database_id) AS [Database],
database_id
FROM sys.databases;