SQL Engine Reference (v11)

SET OWNER

SET OWNER ステートメントを使用すると、現在のデータベース接続中に使用するオーナー ネームを 1 つまたは複数指定できます。オーナー ネームはトランザクショナル インターフェイスからのみ割り当てられ、リレーショナル インターフェイスからは割り当てられません。オーナー ネームとシステム ユーザー名あるいはデータベース ユーザー名との間に関連はないので、注意してください。オーナー ネームは単純なファイル パスワードで、割り当てた場合、データ ファイルをアクセスするのに必要になります。

構文

SET OWNER = [']オーナー ネーム['] [, [']オーナー ネーム[']]... 

備考

SET OWNER ステートメントを使用すると、トランザクショナル インターフェイスを介してオーナー ネームが割り当てられているデータ ファイルのオーナー ネームのリストを指定できます。Pervasive PSQL はリレーショナル インターフェイスにオーナー ネームを渡して、そのリレーショナル インターフェイスがデータ ファイルを開けるようにします。

SET OWNER ステートメントではオーナー ネームをいくつでも指定できます。オーナー ネームがアルファベット以外の文字で始まる場合は、名前を一重引用符(' ')で囲む必要があります。

ステートメントは現在の接続でのみ有効です。SET OWNER コマンドの発行後に現在のユーザーがログアウトする場合、そのユーザーは、次回ログインする際にコマンドを再発行する必要があります。

同一の接続中に発行された各 SET OWNER ステートメントは、オーナー リストをリセットします。つまり、直近の SET OWNER ステートメントで指定されたオーナー ネームのみがデータベース エンジンに渡されます。後続のステートメントでオーナー リストにオーナー ネームを追加することはできません。

セキュリティが無効になっているデータベースでは、SET OWNER コマンドによって、コマンドのリストで指定した名前と同じオーナー ネームを持つすべてのデータ ファイルへのフル アクセスが許可されるようになります。

セキュリティが有効になっているデータベースでは、このコマンドはほとんどのユーザーで何の影響もありません。Master ユーザーによって発行された場合にのみ影響があります。Master ユーザーが自身にまだ権限を付与していない場合は、このコマンドの発行によって、指定したオーナー ネームのいずれかを持つデータ ファイルすべてへのフル アクセスが Master ユーザーに与えられます。また、自身に権限を付与する場合、Master ユーザーには 2 つのオプションがあります。Master ユーザーは、SET OWNER に続けて GRANT を発行する場合は、オーナー ネームなしで発行できます。そうでない場合は、オーナー ネームを指定して GRANT を発行できます。を参照してください。

次の例では、1 つのオーナー ネームを指定しています。

SET OWNER = '12jerry' 
666

次の例では、複数のオーナー ネームを指定しています。

SET OWNER = jimbo, terry, maximus 
 
SET OWNER = 'svrkl77x#region5data', jimbo, terry, maximus 
666

次の例では、同一の接続内における複数の SET OWNER ステートメントの影響を示します。

SET OWNER = jimbo, terry, maximus 
	--オーナー リストの内容:jimbo,terry,maximus。 
SET OWNER = fred, jennie, lucinda 
	--現在のオーナー リストの内容:fred,jennie,lucinda。以前の内容は破棄されます。 
666

次の例は、Master ユーザーがセキュリティで保護されたデータベースで SET OWNER を使用する方法を示します。セキュリティを有効にしたばかりで、データベースの権限は何も付与されていないと仮定します。"inventory" データ ファイルはオーナー ネーム "admin" を持ちます。

自身に権限を付与する場合、Master ユーザーには 2 つのオプションがあります。Master ユーザーは、SET OWNER に続けて GRANT を発行する場合は、オーナー ネームなしで発行できます。そうでない場合は、オーナー ネームを指定して GRANT を発行できます。どちらの方法も同じ結果になります。

SET OWNER = admin 
GRANT ALL ON inventory TO MASTER 

または

GRANT ALL ON inventory admin TO MASTER 

関連項目

GRANT

REVOKE


SET DEFAULTCOLLATE

SET PASSWORD