Sqlserver
 sql >> Teknologi Basis Data >  >> RDS >> Sqlserver

Gunakan DB_ID() untuk Mengembalikan ID Database di SQL Server

Di SQL Server, Anda dapat menggunakan DB_ID() berfungsi untuk mengembalikan ID database saat ini, atau database lain yang ditentukan.

Cara kerjanya adalah, Anda memberikan nama database sebagai argumen, dan kemudian fungsi tersebut akan mengembalikan ID database tersebut. Jika Anda tidak memberikan nama, itu akan mengembalikan ID dari database saat ini.

Contoh 1 – Mengembalikan Database Saat Ini

Berikut adalah contoh dasar untuk mendemonstrasikan cara mengembalikan nama database saat ini.

SELECT DB_ID() AS [Current Database];

Hasil:

+--------------------+
| Current Database   |
|--------------------|
| 6                  |
+--------------------+

Dalam hal ini, database saat ini memiliki ID 6.

Berikut contoh lain yang menunjukkannya lebih jauh, dengan mengganti basis data.

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

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

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

Hasil:

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

Contoh 2 – Mengembalikan Database Tertentu

Berikut adalah contoh mengembalikan database tertentu. Ini dilakukan dengan memasukkan nama database.

SELECT DB_ID('Music') AS Result;

Hasil:

+----------+
| Result   |
|----------|
| 5        |
+----------+

Berikut selengkapnya:

SELECT 
  DB_ID('master') AS [master],
  DB_ID('tempdb') AS [tempdb],
  DB_ID('model') AS [model],
  DB_ID('msdb') AS [msdb],
  DB_ID('Music') AS [Music],
  DB_ID('WideWorldImportersDW') AS ['WideWorldImportersDW'];

Hasil:

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

Contoh 3 – Kueri Basis Data

Berikut adalah contoh di mana DB_ID() bisa berguna.

USE WideWorldImportersDW;
SELECT
  name AS [Foreign Key],
  OBJECT_NAME(parent_object_id, DB_ID('Music')) AS [Parent Object Name],
  OBJECT_NAME(referenced_object_id, DB_ID('Music')) AS [Referenced Object Name]
FROM Music.sys.foreign_keys
WHERE name = 'FK_Artists_Country';

Hasil:

Changed database context to 'WideWorldImportersDW'.
+--------------------+----------------------+--------------------------+
| Foreign Key        | Parent Object Name   | Referenced Object Name   |
|--------------------+----------------------+--------------------------|
| FK_Artists_Country | Artists              | Country                  |
+--------------------+----------------------+--------------------------+
(1 row affected)

Dalam contoh ini, database saat ini adalah WideWorldImportersDW, tetapi saya ingin informasi tentang kunci asing di database Musik. OBJECT_NAME() function mengembalikan nama objek berdasarkan ID-nya, tetapi jika objek berada di database yang berbeda, itu juga memungkinkan saya untuk menentukan ID database. Namun, dalam hal ini saya hanya tahu nama databasenya. Tidak masalah, karena saya bisa menggunakan DB_ID() untuk mengembalikan ID berdasarkan nama.


  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. UNIX_TIMESTAMP di SQL Server

  2. Pencarian teks lengkap tidak berfungsi jika kata berhenti disertakan meskipun daftar kata berhenti kosong

  3. Ekspor tabel dari database ke file csv

  4. Menjalankan SQL Server 2014 di Mesin Virtual Azure

  5. Bagaimana cara memeriksa hasil pekerjaan paket SSIS setelah menyelesaikan eksekusinya?