Catatan
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba masuk atau mengubah direktori.
Akses ke halaman ini memerlukan otorisasi. Anda dapat mencoba mengubah direktori.
Berlaku untuk: SQL Server
Mengubah pemilik database saat ini.
Penting
Fitur ini akan dihapus dalam versi SQL Server yang akan datang. Hindari menggunakan fitur ini dalam pekerjaan pengembangan baru, dan rencanakan untuk memodifikasi aplikasi yang saat ini menggunakan fitur ini. Gunakan ALTER AUTHORIZATION sebagai gantinya.
Sintaks
sp_changedbowner
[ @loginame = ] N'loginame'
[ , [ @map = ] 'map' ]
[ ; ]
Argumen
[ @loginame = ] N'loginame'
ID masuk pemilik baru database saat ini. @loginame adalah sysname, tanpa default. @loginame harus merupakan login SQL Server yang sudah ada atau pengguna Windows. @loginame tidak bisa menjadi pemilik database saat ini jika sudah memiliki akses ke database melalui akun keamanan pengguna yang ada dalam database. Untuk menghindari skenario ini, hilangkan pengguna dalam database saat ini terlebih dahulu.
[ @map = ] 'peta'
Parameter ini tidak digunakan lagi dan dipertahankan untuk kompatibilitas skrip mundur.
Mengembalikan nilai kode
0 (berhasil) atau 1 (kegagalan).
Keterangan
Setelah sp_changedbowner dijalankan, pemilik baru dikenal sebagai pengguna di dbo dalam database. Pengguna dbo telah menyiratkan izin untuk melakukan semua aktivitas dalam database.
Pemilik masterdatabase sistem , model, atau tempdb tidak dapat diubah.
Untuk menampilkan daftar nilai @loginame yang valid, jalankan prosedur tersimpansp_helplogins.
sp_changedbowner Menjalankan hanya dengan parameter @loginame mengubah kepemilikan database menjadi @loginame.
Anda dapat mengubah pemilik yang dapat diamankan dengan menggunakan ALTER AUTHORIZATION pernyataan . Untuk informasi selengkapnya, lihat MENGUBAH OTORISASI.
Izin
TAKE OWNERSHIP Memerlukan izin pada database. Jika pemilik baru memiliki pengguna yang sesuai dalam database, memerlukan IMPERSONATE izin pada login, jika tidak, memerlukan CONTROL SERVER izin di server.
Contoh
Contoh berikut membuat pemilik masuk Albert database saat ini.
EXECUTE sp_changedbowner 'Albert';