Aracılığıyla paylaş


YENİ ROL (Transact-SQL)

Şunlar için geçerlidir:SQL ServerAzure SQL VeritabanıAzure SQL Yönetilen ÖrneğiMicrosoft Fabric'te SQL analiz uç noktasıMicrosoft Fabric'te ambarMicrosoft Fabric'te SQL veritabanı

Veritabanı rolüne üye ekler veya kaldırır ya da kullanıcı tanımlı veritabanı rolünün adını değiştirir.

Note

Azure Synapse Analytics ve Analytics Platform Sistemi'ndeki (PDW) rollere üye eklemek veya rollerden üye bırakmak için sp_addrolemember (Transact-SQL) ve sp_droprolemember (Transact-SQL) kullanın.

Transact-SQL söz dizimi kuralları

Syntax

SQL Server (2012'den başlayarak), Azure SQL Yönetilen Örneği, Azure SQL Veritabanı ve Microsoft Fabric için söz dizimi.

ALTER ROLE  role_name  
{  
       ADD MEMBER database_principal  
    |  DROP MEMBER database_principal  
    |  WITH NAME = new_name  
}  
[;]  

2012'ye kadar SQL Server söz dizimi.

-- Change the name of a user-defined database role  
ALTER ROLE role_name   
    WITH NAME = new_name  
[;]  

Arguments

role_name
Şunlar için geçerlidir: SQL Server (2008'den başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Değiştirecek veritabanı rolünü belirtir.

ÜYE EKLE database_principal
Şunlar için geçerlidir: SQL Server (2012'den itibaren), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Veritabanı rolünün üyeliğine veritabanı sorumlusunun eklenmesini belirtir.

  • database_principal bir veritabanı kullanıcısı veya kullanıcı tanımlı veritabanı rolüdür.

  • database_principal sabit veritabanı rolü veya sunucu sorumlusu olamaz.

DROP ÜYE database_principal
Şunlar için geçerlidir: SQL Server (2012'den itibaren), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Veritabanı rolünün üyeliğinden veritabanı sorumlusunun kaldırılmasını belirtir.

  • database_principal bir veritabanı kullanıcısı veya kullanıcı tanımlı veritabanı rolüdür.

  • database_principal sabit veritabanı rolü veya sunucu sorumlusu olamaz.

İSMI = new_name
Şunlar için geçerlidir: SQL Server (2008'den başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Kullanıcı tanımlı veritabanı rolünün adını değiştirmeyi belirtir. Yeni ad veritabanında zaten mevcut olmamalıdır.

Veritabanı rolünün adını değiştirmek, rolün kimlik numarasını, sahibini veya izinlerini değiştirmez.

Permissions

Bu komutu çalıştırmak için şu izinlerden veya üyeliklerden biri veya daha fazlası gerekir:

  • Rol üzerinde ALTER izni
  • VERITABANıNDAKI TÜM ROL izinlerini DEĞIŞTIRME
  • db_securityadmin sabit veritabanı rolüne üyelik

Ayrıca, sabit veritabanı rolündeki üyeliği değiştirmek için ihtiyacınız olan:

  • db_owner sabit veritabanı rolüne üyelik

Sınırlamalar ve kısıtlamalar

Sabit veritabanı rolünün adını değiştiremezsiniz.

Metadata

Bu sistem görünümleri, veritabanı rolleri ve veritabanı sorumluları hakkında bilgi içerir.

Examples

A. Veritabanı rolünün adını değiştirme

Şunlar için geçerlidir: SQL Server (2008'den başlayarak), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Aşağıdaki örnek rolün buyers adını olarak purchasingdeğiştirir. Bu örnek AdventureWorks örnek veritabanında yürütülebilir.

ALTER ROLE buyers WITH NAME = purchasing;  

B. Rol üyeleri ekleme veya kaldırma

Şunlar için geçerlidir: SQL Server (2012'den itibaren), Azure SQL Veritabanı, Azure SQL Yönetilen Örneği

Bu örnek adlı Salesbir veritabanı rolü oluşturur. Üyeye Barry adlı bir veritabanı kullanıcısı ekler ve üye Barry'nin nasıl kaldırılacağını gösterir. Bu örnek AdventureWorks örnek veritabanında yürütülebilir.

CREATE ROLE Sales;  
ALTER ROLE Sales ADD MEMBER Barry;  
ALTER ROLE Sales DROP MEMBER Barry;  

C. Azure SQL Veritabanı için özel rollere rol üyesi ekleme

Şunlar için geçerlidir: Azure SQL Veritabanı

Bu örnek, sanal ana veritabanında bir SQL oturumu oluşturur, bu sunucu oturum açma bilgileriyle ilgili bir veritabanı kullanıcısı oluşturur ve veritabanı kullanıcısını özel rolün dbmanagerüyesi olarak ekler. Örnek, kullanıcı izinlerinin bir Azure SQL Veritabanı mantıksal sunucusunda veritabanı oluşturmasına ve bırakmasına izin verir. Örneği Azure SQL Veritabanı mantıksal sunucusunun sanal ana veritabanında çalıştırın.

 CREATE LOGIN sqllogin_nlastname WITH password='aah3%#om1os';
    
 CREATE USER sqllogin_nlastname FOR LOGIN sqllogin_nlastname 
 WITH DEFAULT_SCHEMA = master;
    
 ALTER ROLE [dbmanager] add member sqllogin_nlastname;

Ayrıca Bkz.

ROL OLUŞTUR (Transact-SQL)
Sorumluları (Veritabanı Altyapısı)
DROP ROLÜ (Transact-SQL)
sp_addrolemember (Transact-SQL)
sys.database_role_members (Transact-SQL)
sys.database_principals (Transact-SQL)