DB_ID (Transact-SQL)

データベースの識別 (ID) 番号を返します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

DB_ID ( [ 'database_name' ] ) 

引数

  • 'database_name'
    対応するデータベース ID を返す基になるデータベースの名前です。database_name のデータ型は sysname です。database_name の指定を省略すると、現在のデータベース ID が返されます。

戻り値の型

int

A. 現在のデータベースのデータベース ID を返す

この例では、現在のデータベースのデータベース ID を返します。

SELECT DB_ID() AS [Database ID];
GO

B. 指定したデータベースのデータベース ID を返す

この例では、AdventureWorks2008R2 データベースのデータベース ID を返します。

SELECT DB_ID(N'AdventureWorks2008R2') AS [Database ID];
GO

C. DB_ID を使用してシステム関数パラメーターの値を指定する

この例では、DB_ID を使用して AdventureWorks2008R2 データベースのデータベース ID をシステム関数 sys.dm_db_index_operational_stats で返します。この関数はデータベース ID を最初のパラメーターとしてとります。

DECLARE @db_id int;
DECLARE @object_id int;
SET @db_id = DB_ID(N'AdventureWorks2008R2');
SET @object_id = OBJECT_ID(N'AdventureWorks2008R2.Person.Address');
IF @db_id IS NULL 
  BEGIN;
    PRINT N'Invalid database';
  END;
ELSE IF @object_id IS NULL
  BEGIN;
    PRINT N'Invalid object';
  END;
ELSE
  BEGIN;
    SELECT * FROM sys.dm_db_index_operational_stats(@db_id, @object_id, NULL, NULL);
  END;
GO