sp_dropuser (T-SQL)
Berlaku untuk: SQL Server
Menghapus pengguna database dari database saat ini. sp_dropuser
menyediakan kompatibilitas dengan versi SQL Server yang lebih lama.
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 DROP USER sebagai gantinya.
Sintaks
sp_dropuser [ @name_in_db = ] N'name_in_db'
[ ; ]
Argumen
[ @name_in_db = ] N'name_in_db'
Nama pengguna yang akan dihapus. @name_in_db adalah sysname, tanpa default. @name_in_db harus ada di database saat ini. Saat menentukan akun Windows, gunakan nama tempat database mengetahui akun tersebut.
Mengembalikan nilai kode
0
(berhasil) atau 1
(kegagalan).
Keterangan
sp_dropuser
sp_revokedbaccess
menjalankan untuk menghapus pengguna dari database saat ini.
Gunakan sp_helpuser
untuk menampilkan daftar nama pengguna yang dapat dihapus dari database saat ini.
Saat pengguna database dihapus, alias apa pun untuk pengguna tersebut juga dihapus. Jika pengguna memiliki skema kosong dengan nama yang sama dengan pengguna, skema akan dihilangkan. Jika pengguna memiliki jaminan lain dalam database, pengguna tidak akan dihilangkan. Kepemilikan objek harus terlebih dahulu ditransfer ke prinsipal lain. Untuk informasi selengkapnya, lihat MENGUBAH OTORISASI. Menghapus pengguna database secara otomatis menghapus izin yang terkait dengan pengguna tersebut dan menghapus pengguna dari peran database apa pun yang merupakan anggotanya.
sp_dropuser
tidak dapat digunakan untuk menghapus pengguna pemilik database (dbo), INFORMATION_SCHEMA
atau pengguna tamu dari master
database atau tempdb
. Dalam database nonsystem, EXEC sp_dropuser 'guest'
mencabut CONNECT
izin dari tamu pengguna, tetapi pengguna itu sendiri tidak dihilangkan.
sp_dropuser
tidak dapat dijalankan dalam transaksi yang ditentukan pengguna.
Izin
ALTER ANY USER
Memerlukan izin pada database.
Contoh
Contoh berikut menghapus pengguna Albert
dari database saat ini.
EXEC sp_dropuser 'Albert';
GO