次の方法で共有


SUSER_SID (Transact-SQL)

指定されたログイン名のセキュリティ ID 番号 (SID) を返します。

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

構文

SUSER_SID ( [ 'login' ] ) 

引数

'login'

ユーザーのログイン名です。loginsysname であり、省略可能です。login には、Microsoft SQL Server ログイン、あるいは Microsoft Windows ユーザーまたはグループを指定できます。login の指定を省略すると、現在のセキュリティ コンテキストについての情報が返されます。

戻り値の型

varbinary(85)

解説

SUSER_SID は、ALTER TABLE または CREATE TABLE の中で、DEFAULT 制約として使用できます。SUSER_SID は、選択リストの中、WHERE 句の中、また、式を使える所ならどこにでも使用できます。SUSER_SID の後には、パラメータを指定しない場合も含め、常にかっこが必要です。

SUSER_SID を引数なしで呼び出すと、現在のセキュリティ コンテキストの SID が返されます。EXECUTE AS を使用してコンテキストを切り替えたバッチ内で SUSER_SID を引数なしで呼び出すと、権限を借用したコンテキストの SID が返されます。権限を借用したコンテキストから SUSER_SID(ORIGINAL_LOGIN()) を呼び出すと、元のコンテキストの SID が返されます。

A. SUSER_SID を使用する

次の例では、SQL Server における sa というログインのセキュリティ ID 番号を返します。

SELECT SUSER_SID('sa');
GO

B. SUSER_SID を Windows ユーザー名と共に使用する

次の例では、Windows ユーザーである London\Workstation1 のセキュリティ ID 番号を返します。

SELECT SUSER_SID('London\Workstation1');
GO

C. SUSER_SID を DEFAULT 制約として使用する

次の例では、CREATE TABLE ステートメントで SUSER_SIDDEFAULT 制約として使用しています。

USE AdventureWorks;
GO
CREATE TABLE sid_example
(
login_sid   varbinary(85) DEFAULT SUSER_SID(),
login_name  varchar(30) DEFAULT SYSTEM_USER,
login_dept  varchar(10) DEFAULT 'SALES',
login_date  datetime DEFAULT GETDATE()
) 
GO
INSERT sid_example DEFAULT VALUES
GO

参照

関連項目

ORIGINAL_LOGIN (Transact-SQL)
CREATE TABLE (Transact-SQL)
binary と varbinary (Transact-SQL)
システム関数 (Transact-SQL)

ヘルプおよび情報

SQL Server 2005 の参考資料の入手