REASSIGN OWNED — あるデータベースロールにより所有されたデータベースオブジェクトの所有権を変更する
REASSIGN OWNED BY { old_role | CURRENT_USER | SESSION_USER } [, ...]
TO { new_role | CURRENT_USER | SESSION_USER }
REASSIGN OWNEDは、old_rolesのいずれかが所有するデータベースオブジェクトの所有権をnew_roleに変更するようシステムに指示します。
old_role
ロール名です。
このロールが所有する、現在のデータベースのすべてのオブジェクトの所有権、および共有オブジェクトの中のすべて(データベースやテーブル空間)をnew_roleに割り当てます。
new_role対象とするオブジェクトの新しい所有者となるロール名です。
REASSIGN OWNEDは、1つ以上のロールの削除準備によく使用されます。
REASSIGN OWNEDは他のデータベース内のオブジェクトには影響を与えませんので、通常は、削除対象のロールにより所有されるオブジェクトを有するデータベース毎にこのコマンドを実行する必要があります。
REASSIGN OWNEDは元のロールと対象のロール上にメンバ資格が必要です。
代わりにDROP OWNEDコマンドを使用して、1つ以上のロールにより所有されるデータベースオブジェクトすべてを単に削除することができます。
REASSIGN OWNEDコマンドは、old_rolesにより所有されていないオブジェクトにおいてold_rolesに与えられた権限には影響しません。
同様に、ALTER DEFAULT PRIVILEGESで作成されたデフォルトの権限には影響しません。
こうした権限を取り消すには、DROP OWNEDを使用してください。
詳しくは21.4を参照してください。
REASSIGN OWNEDコマンドはPostgreSQLの拡張です。