sp_changedbowner (języka Transact-SQL)

Zmienia właściciela bieżącej bazy danych.

Ostrzeżenie

Ta funkcja zostanie usunięta z przyszłej wersji programu Microsoft SQL Server. Należy unikać stosowania tej funkcji w nowych projektach oraz zaplanować modyfikację aplikacji, w których obecnie jest używana ta funkcja.Użycie ALTER autoryzacji zamiast.

Ikona łącza do tematuJęzyka Transact-SQL składni konwencje

Składnia

sp_changedbowner [ @loginame = ] 'login'
     [ , [ @map = ] remap_alias_flag ]

Argumenty

  • [ @loginame= ] 'login'
    Jest to identyfikator logowania nowego właściciela bieżącej bazy danych.loginjest sysname, z braku domyślne.loginmusi być już istniejącego SQL Server logowania lub użytkownika systemu Windows.loginnie może stać się właścicielem bieżącej bazy danych, jeśli już ma dostęp do bazy danych przy użyciu istniejącego konta zabezpieczeń użytkownika w bazie danych.Aby tego uniknąć, upuszczaj najpierw użytkownika w bieżącej bazie danych.

  • [ @map= ] remap_alias_flag
    remap_alias_flag Parametr jest niezalecane, ponieważ aliasy logowania zostały usunięte z SQL Server.Za pomocą remap_alias_flag parametr nie spowoduje błąd, ale ma nie skutku.

Wartości kodów powrotnych

0 (sukces) lub 1 (błąd)

Uwagi

Po sp_changedbowner jest wykonywane, nowy właściciel jest znany jako dbo użytkowników wewnątrz bazy danych.dbo Ma uprawnienia wprost do wykonywania wszystkich czynności w bazie danych.

Właściciel master, model, lub tempdb bazy danych systemu nie mogą być zmieniane.

Aby wyświetlić listę prawidłowego login wartości, wykonać sp_helplogins procedura składowana.

Wykonywanie sp_changedbowner tylko z parametrem login prawa własności do bazy danych zmian parametrów login.

Aby zmienić właściciela dowolnego zabezpieczany , za pomocą instrukcjaALTER autoryzacji.Aby uzyskać więcej informacji, zobacz ALTER autoryzacji (Transact-SQL).

Uprawnienia

Wymaga uprawnienia PRZEJMIJ na własność w bazie danych.Nowy właściciel ma odpowiadającego użytkownika w bazie danych, wymaga uprawnienia PERSONIFIKUJ logowania, w przeciwnym razie wymaga uprawnień sterowania serwera na serwerze.

Przykłady

Poniższy przykład powoduje, że identyfikator logowania Albert właściciel bieżącej bazy danych.

EXEC sp_changedbowner 'Albert'