GIVE文を使用して、データベースおよびユーザーを、例えば次のようにして、ある直接所有者から別の所有者へと譲渡できます。
GIVE Finance TO Alice;
GIVE文は、すべての子データベースやユーザーだけでなく、譲渡されるオブジェクトが所有しているオブジェクト(テーブル、ビュー、マクロ、インデックス、ストアド プロシージャ、およびトリガー)も譲渡します。
所有権の譲渡に影響を与えるルールには、以下のものがあります。
- オブジェクトは、そのオブジェクトの子に譲渡することはできません。
- データベースまたはユーザーが所有している固定領域も譲渡されます。
- GIVEを使用するためには、譲渡されるオブジェクトに対する明示的なDROP DATABASE/USER権限と、受け取り側のオブジェクトに対する明示的なDROP/CREATE DATABASE/USER権限が必要です。
- 他に付与された譲渡されるユーザーに対する明示権限はいずれも、自動的に取り消されることはありません。明示権限は明示的にREVOKEする必要があります。
- 所有権階層の変更は、暗黙権限に影響します。データベースまたはユーザーの所有者が新しくなると、以前の所有者はそのオブジェクト(およびその階層の下位にあるすべてのオブジェクト)に対する暗黙権限を失います。新しい所有者(および階層内でその所有者の上位の所有者)は、そのオブジェクトおよびその階層の下位にあるすべてのオブジェクトに対する暗黙権限を取得します。
所有権を譲渡すると、領域割り当てが影響を受けます。GIVE文を使用する際は、事前に領域配置とオブジェクト所有権について注意深く計画し、確認してください。