sp_changeobjectowner (języka Transact-SQL)
Zmienia właściciela obiektu w bieżącej bazie danych.
Ważne: |
---|
Ta procedura składowana działa tylko z obiektami dostępnymi w Microsoft SQL Server 2000.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 Zmiany SCHEMATU lub ALTER autoryzacji zamiast.sp_changeobjectowner zmian schematu i właściciela.W celu zachowania zgodności ze starszymi wersjami programu SQL Server, ta procedura składowana zostanie zmieniony tylko właścicieli obiektów podczas bieżącego właściciela i nowego właściciela własne schematy, które mają taką samą nazwę jak ich nazwy użytkownika bazy danych. |
Ważne: |
---|
Nowy wymóg uprawnienie został dodany do tej procedura składowana. |
Składnia
sp_changeobjectowner [ @objname = ] 'object' , [ @newowner = ] 'owner'
Argumenty
[ @ NazwaObk = ] 'object"
Jest nazwą istniejącej tabela, widoku, funkcjazdefiniowanej przez użytkownika lub procedura składowana w bieżącej bazie danych.object jest nvarchar(776), z braku domyślne.objectmoże zostać zakwalifikowany z właścicielem istniejącego obiektu w formularzu existing_owner**.**object Jeśli schemat i jego właściciela mają taką samą nazwę.[ @ newowner =] **'**owner "
Jest to nazwa konta zabezpieczeń, który będzie nowym właścicielem obiektu.ownerjest sysname, z braku domyślne.ownermusi być prawidłową bazą danych użytkownika, roli serwera Microsoft logowania systemu Windows lub grupy systemu Windows z dostępem do bieżącej bazy danych.W przypadku systemu Windows użytkownika lub grupy systemu Windows, dla których nie istnieje głównej odpowiedniej bazy danych — niepoziom nowego właściciela użytkownika bazy danych zostanie utworzony.
Wartości kodów powrotnych
0 (sukces) lub 1 (błąd)
Uwagi
sp_changeobjectowner usuwa wszystkie istniejące uprawnienia od obiektu.Konieczne będzie ponowne zastosowanie wszelkich uprawnień, które mają być zachowane po uruchomieniu sp_changeobjectowner.Dlatego zaleca się skrypt poza istniejące uprawnienia przed uruchomieniem sp_changeobjectowner.Po zmianie własności obiektu można użyć skryptu, aby ponownie zastosować uprawnienia.Właściciel obiektu w skrypcie uprawnienia przed uruchomieniem należy zmodyfikować.Aby uzyskać więcej informacji na temat bazy danych, wykonywanie skryptów, zobacz Dokumentowanie i skryptów baz danych.
Aby zmienić właściciela zabezpieczany, użyj ALTER autoryzacji.Aby zmienić schemat, użyj zmiany SCHEMATU.
Uprawnienia
Wymaga członkostwa w db_owner ustalonego w rola bazy danychlub członkostwa w obu db_ddladmin stałej rola bazy danych i db_securityadmin stałe rola bazy danychi uprawnienie Kontrola do obiektu.
Przykłady
Poniższy przykład zmienia właściciela authors tabela do Corporate\GeorgeW.
EXEC sp_changeobjectowner 'authors', 'Corporate\GeorgeW';
GO