alter ROLE (Transact-sql)
Bir veritabanı rolü üyelerinin ekler veya kullanıcı tanımlı veritabanı rolünün adını değiştirir.
Transact-SQL Sözdizim Kuralları
Sözdizimi
ALTER ROLE role_name
{
[ ADD MEMBER database_principal ]
| [ DROP MEMBER database_principal ]
| WITH NAME = new_name
}
Bağımsız değişkenler
role_name
Değiştirilecek rolü addır.ÜYE EKLEdatabase_principal
Belirtilen veritabanı asıl veritabanı rolü ekler. database_principalbir kullanıcı veya kullanıcı tanımlı veritabanı rolü olabilir. database_principalsabit veritabanı rolü veya bir sunucu asıl adı olamaz.AÇILAN ÜYEdatabase_principal
Belirtilen veritabanı asıl veritabanı rolünden kaldırır. database_principalbir kullanıcı veya kullanıcı tanımlı veritabanı rolü olabilir. database_principalsabit veritabanı rolü, asıl sunucu olamaz.WITH NAME =new_name
Kullanıcı tanımlı rol yeni adını belirtir. Bu ad zaten veritabanında bulunmalı değil. Sabit veritabanı rolleri adını değiştiremezsiniz.
Açıklamalar
Veritabanı rolü adı kimlik numarası, sahibi veya rolünün izinlerini değiştirmek.
Veritabanı rolleri görünür sys.database_role_membersve sys.database_principalsKatalog görünümleri.
Dikkat |
---|
SQL Server 2005'ten itibaren şemaların davranışları değişmiştir. Bunun sonucunda, şemaların veritabanı kullanıcılarına denk olduğunu kabul eden kod artık doğru sonuçlar döndürmeyebilir. Eski katalog görünümleri, sysobjects dahil, aşağıdaki DLL ifadelerinden herhangi birinin kullanıldığı bir veritabanında kullanılmamalıdır: 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. Bu gibi veritabanlarında bunun yerine yeni katalog görünümlerini kullanmalısınız. Yeni katalog görünümleri, ilk olarak SQL Server 2005 içinde kullanılan prensiplerin ve şemaların ayrılmasını dikkate alır. Katalog görünümleri hakkında daha fazla bilgi için, bkz. Catalog Views (Transact-SQL) (Katalog Görünümleri (Transact-SQL)). |
İzinler
Gerektirir ALTER ANY ROLEveritabanı izni veya ALTERrolü veya üyelik izni db_securityadmin.
Örnekler
A.Veritabanı rolü adı
Aşağıdaki örnek rolün adını değiştirir buyersiçin purchasing.
USE AdventureWorks2012;
ALTER ROLE buyers WITH NAME = purchasing;
GO
USE AdventureWorks2012;
ALTER ROLE buyers WITH NAME = purchasing;
GO
B.Ekleme ve rol üyeleri kaldırma
Aşağıdaki örnek, adlı bir rolü oluşturur Sales, ekler ve sonra adlı bir kullanıcı kaldırır Barry.
CREATE ROLE Sales;
ALTER ROLE Sales ADD MEMBER Barry;
ALTER ROLE Sales DROP MEMBER Barry;
CREATE ROLE Sales;
ALTER ROLE Sales ADD MEMBER Barry;
ALTER ROLE Sales DROP MEMBER Barry;
Ayrıca bkz.
Başvuru
sp_addrolemember (Transact-sql)
sys.database_role_members (Transact-sql)
sys.database_principals (Transact-sql)