DROP ROLE (Transact-SQL)
Berlaku untuk:
SQL Server (semua versi yang didukung)
Azure SQL Managed Instance
Azure Synapse Analytics Analytics
Platform System (PDW)
Menghapus peran dari database.
Sintaks
-- Syntax for SQL Server
DROP ROLE [ IF EXISTS ] role_name
-- Syntax for Azure Synapse Analytics and Parallel Data Warehouse
DROP ROLE role_name
Catatan
Untuk melihat sintaks transact-SQL untuk SQL Server 2014 dan yang lebih lama, lihat Dokumentasi versi sebelumnya.
Argumen
IF EXISTS
Berlaku untuk: SQL Server ( SQL Server 2016 (13.x) melalui versi saat ini).
Secara kondisional menghilangkan peran hanya jika sudah ada.
role_name
Menentukan peran yang akan dihilangkan dari database.
Keterangan
Peran yang memiliki pengamanan tidak dapat dihilangkan dari database. Untuk menghilangkan peran database yang memiliki keamanan, Anda harus terlebih dahulu mentransfer kepemilikan yang dapat diamankan tersebut atau menghilangkannya dari database. Peran yang memiliki anggota tidak dapat dihilangkan dari database. Untuk menghilangkan peran yang memiliki anggota, Anda harus terlebih dahulu menghapus anggota peran.
Untuk menghapus anggota dari peran database, gunakan ALTER ROLE (Transact-SQL).
Anda tidak dapat menggunakan DROP ROLE untuk menghilangkan peran database tetap.
Informasi tentang keanggotaan peran dapat dilihat dalam tampilan katalog sys.database_role_members.
Perhatian
Dimulai dengan SQL Server 2005, perilaku skema berubah. Akibatnya, kode yang mengasumsikan bahwa skema setara dengan pengguna database mungkin tidak lagi mengembalikan hasil yang benar. Tampilan katalog lama, termasuk sysobject, tidak boleh digunakan dalam database di mana salah satu pernyataan DDL berikut pernah digunakan: CREATE SCHEMA, ALTER SCHEMA, DROP SCHEMA, CREATE USER, ALTER USER, DROP USER, CREATE ROLE, ALTER ROLE, DROP ROLE, CREATE APPROLE, ALTER APPROLE, DROP APPROLE, ALTER AUTHORIZATION. Dalam database tersebut Anda harus menggunakan tampilan katalog baru. Tampilan katalog baru memperhitungkan pemisahan prinsipal dan skema yang diperkenalkan pada SQL Server 2005. Untuk informasi selengkapnya tentang tampilan katalog, lihat Tampilan Katalog (SQL Transact).
Untuk menghapus peran server, gunakan DROP SERVER ROLE (Transact-SQL).
Izin
Memerlukan izin UBAH PERAN APA PUN pada database, atau izin CONTROL pada peran, atau keanggotaan dalam db_securityadmin.
Contoh
Contoh berikut menghilangkan peran purchasing database dari AdventureWorks2012 database.
DROP ROLE purchasing;
GO
Lihat juga
CREATE ROLE (Transact-SQL)
ALTER ROLE (Transact-SQL)
Prinsipal (Mesin Database)
EVENTDATA (SQL Transaksi)
sp_addrolemember (SQL Bertransaksi)
sys.database_role_members (SQL Bertransaksi)
sys.database_principals (SQL Bertransaksi)
Fungsi Keamanan (T-SQL)
