Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak DB_NAME() działa w SQL Server

W SQL Server możesz użyć DB_NAME() funkcja zwracająca nazwę bieżącej bazy danych lub innej określonej bazy danych.

Działa to tak, że jako argument przekazujesz identyfikator bazy danych, a następnie funkcja zwróci nazwę tej bazy danych. Jeśli jednak nie przekażesz identyfikatora, zwróci on nazwę bieżącej bazy danych.

Przykład 1 – Zwróć bieżącą bazę danych

Oto podstawowy przykład pokazujący, jak zwrócić nazwę bieżącej bazy danych.

SELECT DB_NAME() AS [Current Database];

Wynik:

+----------------------+
| Current Database     |
|----------------------|
| WideWorldImportersDW |
+----------------------+

W tym przypadku bieżąca baza danych nazywa się WideWorldImportersDW.

Oto kolejny przykład, który jeszcze bardziej to demonstruje, zmieniając bazy danych.

USE Music;
SELECT DB_NAME() AS [Current Database];

USE EMS;
SELECT DB_NAME() AS [Current Database];

USE WideWorldImportersDW;
SELECT DB_NAME() AS [Current Database];

Wynik:

Changed database context to 'Music'.
+--------------------+
| Current Database   |
|--------------------|
| Music              |
+--------------------+
(1 row affected)
Changed database context to 'EMS'.
+--------------------+
| Current Database   |
|--------------------|
| EMS                |
+--------------------+
(1 row affected)
Changed database context to 'WideWorldImportersDW'.
+----------------------+
| Current Database     |
|----------------------|
| WideWorldImportersDW |
+----------------------+
(1 row affected)

Przykład 2 – Zwróć określoną bazę danych

Oto przykład zwracania konkretnej bazy danych. Odbywa się to poprzez przekazanie identyfikatora bazy danych.

SELECT DB_NAME(6) AS Result;

Wynik:

+----------------------+
| Result               |
|----------------------|
| WideWorldImportersDW |
+----------------------+

A skoro już przy tym jesteśmy, oto kilka innych:

SELECT 
  DB_NAME(1) AS [1],
  DB_NAME(2) AS [2],
  DB_NAME(3) AS [3],
  DB_NAME(4) AS [4],
  DB_NAME(5) AS [5],
  DB_NAME(6) AS [6];

Wynik:

+--------+--------+-------+------+-------+----------------------+
| 1      | 2      | 3     | 4    | 5     | 6                    |
|--------+--------+-------+------+-------+----------------------|
| master | tempdb | model | msdb | Music | WideWorldImportersDW |
+--------+--------+-------+------+-------+----------------------+

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Najlepsze fora dotyczące wydajności programu SQL Server, aby uzyskać pomoc w odpowiedzi na najtrudniejsze pytania

  2. CONVERT() vs TRY_CONVERT w SQL Server:jaka jest różnica?

  3. Co właściwie oznacza indeks klastrowy i nieklastrowy?

  4. Utwórz kopię zapasową bazy danych w SQL Server 2017

  5. SQL Server 2008 — Pobierz ograniczenia dotyczące tabel