SQL Server: T-SQL で現在のデータベース名を取得する方法

SQL Server: T-SQL で現在のデータベース名を取得する方法

環境ごとにデータベース名が違って、現在のデータベース名を取得して、ダイナミッククエリなどを生成して実行したいような時があるかもしれません。

ここでは、SQL Server で現在のデータベース名を取得する組み込み関数をご紹介します。


DB_NAME() で現在のデータベース名を取得する

SQL Server の T-SQL で現在のデータベース名を取得するには、組み込み関数の DB_NAME() が使えます。

DB_NAME() の構文は以下の通りです。

DB_NAME([database_id])

オプショナルで database_id を引数として受け取り、その database_id のデータベース名を返します。

引数の database_id を渡さなかったときは、現在のデータベース名が返ります。

戻り値のデータ型は NVARCHAR(128) です。


例えば、AdventureWorks2019 データベースが選択された状態で、次のクエリーを実行すると、現在のデータベース名の AdventureWorks2019 が取得できます。

SELECT DB_NAME() AS DatabaseName;

[実行結果]

T-SQL で現在のデータベース名を取得する方法 1


database_id = 12 のデータベース名を取得したいような時は、次のようにできます。

[実行結果]

T-SQL で現在のデータベース名を取得する方法 2

T-SQL で現在のデータベース名を取得する方法 3

database_id = 12 のデータベースは Test データベースなので、Test という名前が返っています。


以上、SQL Server で現在のデータベース名を取得する組み込み関数をご紹介しました。

© 2010-2024 SQL Server 入門