Aracılığıyla paylaş


sp_changeobjectowner (Transact-sql)

Geçerli veritabanında bir nesneye sahibini değiştirir.

Önemli notÖnemli

Bu saklı yordam yalnızca kullanılabilir nesneleri ile çalışır Microsoft SQL Server 2000. Bu özellik Microsoft SQL Server'ın ilerideki bir sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanmakta olan uygulamalarda değişiklik yapmayı planlayın.Kullanım alter schema veya alter YETKILENDIRME onun yerine. sp_changeobjectowner şema ve sahibi değiştirir. Önceki sürümleriyle uyumluluğu korumak için SQL Server, hem geçerli sahibi hem de yeni sahibi veritabanı kullanıcı adlarını aynı ada sahip şemaları kendi bu saklı yordam yalnızca nesne sahipleri değişecek.

Önemli notÖnemli

Bu saklı yordam için yeni izin şartı eklenmiştir.

Konu bağlantısı simgesi Transact-SQL Sözdizim Kuralları

Sözdizimi

sp_changeobjectowner [ @objname = ] 'object' , [ @newowner = ] 'owner'

Bağımsız değişkenler

  • @objname = 'object'
    Varolan bir tablo, görünüm, kullanıcı tanımlı fonksiyon veya geçerli veritabanında saklı yordam addır. object olan bir nvarchar(776), hiçbir varsayılan ile. objectFormdaki varolan nesne sahibi ile nitelikli existing_owner**.**object şema ve onun sahibi aynı ada sahip.

  • **@newowner='**owner '
    Nesnenin yeni sahibi olacak güvenlik hesabının adıdır. ownerise sysname, hiçbir varsayılan ile. ownerGeçerli veritabanı kullanıcı, sunucu rolü olmalıdır MicrosoftWindows oturumu açma veya Windows grubu geçerli veritabanı erişimi. Yeni sahibi bir Windows kullanıcısı veya var olduğu hiçbir karşılık gelen veritabanı düzeyinde asıl Windows grubu ise, veritabanı kullanıcı oluşturulur.

Dönüş Kodu Değerleri

0 (başarılı) veya 1 (hata)

Açıklamalar

sp_changeobjectowner nesneden tüm izinleri kaldırır. Çalıştırdıktan sonra saklamak istediğiniz izinlerin yeniden gerekecek sp_changeobjectowner. Bu nedenle öneririz dışında varolan izinleri çalıştırmadan önce komut dosyası sp_changeobjectowner. Nesnenin sahipliğini değiştirildikten sonra izinler yeniden uygulamak için komut dosyası kullanabilirsiniz. Nesne sahibi izinleri komut dosyasını çalıştırmadan önce değiştirmeniz gerekir.

Bir güvenli hale getirilebilen sahibini değiştirmek için alter YETKILENDIRME kullanın. Şemayı değiştirmek için alter schema kullanın.

İzinler

Üyelik db_owner her ikisi de sabit veritabanı rolü veya üyelik db_ddladmin sabit veritabanı rolü ve db_securityadmin veritabanı rolü de DENETIM izni nesne üzerinde sabit.

Örnekler

Aşağıdaki örnek sahibini değiştirir authorstabloya Corporate\GeorgeW.

EXEC sp_changeobjectowner 'authors', 'Corporate\GeorgeW';
GO

EXEC sp_changeobjectowner 'authors', 'Corporate\GeorgeW';
GO

Ayrıca bkz.

Başvuru

ALTER SCHEMA (Transact-SQL)

alter veritabanı (Transact-sql)

YETKILENDIRME (Transact-sql)

sp_changedbowner (Transact-sql)

Sistem saklı yordamları (Transact-sql)