SQL Server 2012でdboスキーマの所有権を転送する方法


15

誤ってユーザーにdb_ownerスキーマの所有権を与えました(以下のUIのチェックボックスを使用)が、今はできません:

  1. 所有権を別のユーザーに譲渡する
  2. DBからユーザーを削除します(ただし、SQL Serverでログインを削除できます)

私が試したデータベースプリンシパルは、データベースのスキーマを所有しており、削除できません。

ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo

そして、正常に完了している間、ユーザーにはまだ所有権があり、灰色で表示されているので、UIでも実行できないようです。

ここに画像の説明を入力してください

ソリューションを見つけました:

Arronの答えに加えて、間違ったDB(facepalm!)で上記のコマンドを実行することに気付きました。DBが修正されると、上記のSQLと以下の回答の両方が機能しました。

回答:


21

少し異なるアプローチは、スキーマをdboではなく、元の所有者/スキーマに戻すことです。

ALTER AUTHORIZATION ON SCHEMA::db_owner TO db_owner;
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.