Jak przenieść własność schematu dbo w SQL Server 2012


15

Przez przypadek nadałem użytkownikowi własność schematu db_owner (używając pola wyboru w interfejsie użytkownika, jak poniżej), a teraz nie mogę:

  1. Przenieś własność na innego użytkownika
  2. Usuń użytkownika z bazy danych (chociaż mogę usunąć login na serwerze SQL)

Próbowałem Główny podmiot bazy danych jest właścicielem schematu w bazie danych i nie można go usunąć.

ALTER AUTHORIZATION ON SCHEMA::db_owner TO dbo

I pomimo pomyślnego ukończenia, użytkownik nadal jest właścicielem i jest wyszarzony, więc nie mogę tego zrobić w interfejsie użytkownika.

wprowadź opis zdjęcia tutaj

Znaleziono rozwiązanie:

Oprócz odpowiedzi Arrona zdałem sobie sprawę, że uruchomię powyższe polecenie w złym DB (facepalm!). Po poprawieniu DB zarówno powyższy SQL, jak i odpowiedź poniżej zadziałały.

Odpowiedzi:


21

Nieco innym podejściem byłoby oddanie schematu pierwotnemu właścicielowi / schematu zamiast dbo:

ALTER AUTHORIZATION ON SCHEMA::db_owner TO db_owner;
Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.