sp_addrolemember (Transact-sql)
Veritabanı rolü geçerli veritabanında veritabanı kullanıcı, veritabanı rol, Windows oturumu açma veya Windows grup ekler.
Önemli |
---|
Bu özellik Microsoft SQL Server'ın ilerideki bir sürümünde kaldırılacaktır. Yeni geliştirme işlerinde bu özelliği kullanmaktan kaçının ve bu özelliği kullanmakta olan uygulamalarda değişiklik yapmayı planlayın.Kullanım alter user onun yerine. |
Transact-SQL Sözdizim Kuralları
Sözdizimi
sp_addrolemember [ @rolename = ] 'role',
[ @membername = ] 'security_account'
Bağımsız değişkenler
[ @rolename= ] 'role'
Veritabanı rolü geçerli veritabanında adıdır. roleolan bir sysname, hiçbir varsayılan ile.[ @membername= ] 'security_account'
Güvenlik hesabını rolüne eklenir. security_accountolan bir sysname, hiçbir varsayılan ile. security_accountVeritabanı kullanıcı, veritabanı rol, Windows oturumu açma veya Windows grubu olabilir.
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (hata)
Açıklamalar
Role kullanılarak eklenen üye sp_addrolememberrolü izinleri devralır. Yeni üye olmadan karşılık gelen veritabanı kullanıcı Windows düzeyinde asıl adı ise, veritabanı kullanıcı oluşturulur ancak tam oturum açma eşlenen değil. Her zaman giriş var ve veritabanına erişimi olduğunu denetleyin.
Bir rolü kendisine üye içeremez. Böyle "döngüsel" hatta üyelik yalnızca dolaylı olarak bir veya daha fazla ara üyelikleri ile örtülü zaman tanımları geçerli değildir.
sp_addrolememberbir sabit veritabanı rolü, sabit sunucu rolü, ekleyemez veya dborolü. sp_addrolememberkullanıcı tanımlı bir işlem içinde yürütülemiyor.
Sadece sp_addrolememberbir veritabanı rolü üye eklemek. Bir sunucu rolü için bir üye eklemek için kullanın sp_addsrvrolemember (Transact-sql).
İzinler
Esnek veritabanı rolleri üye ekleme aşağıdakilerden birini gerektirir:
Üyelik db_securityadminya db_ownerveritabanı rolü.
Rol sahibi olan rol üyeliği.
ALTER ANY ROLEizni ya da ALTERrol izni.
Sabit veritabanı rolleri üye ekleme, üyelik gerektiren db_ownerveritabanı rolü.
Örnekler
A.Windows oturumu açma ekleme
Aşağıdaki örnek, Windows oturumu açma ekler Contoso\Mary5için AdventureWorks2012veritabanı kullanıcı Mary5. Kullanıcı Mary5sonra eklenen Productionrolü.
[!NOT]
Çünkü Contoso\Mary5veritabanı kullanıcı olarak bilinen Mary5de AdventureWorks2012veritabanı, kullanıcı adı Mary5belirtilmesi gerekir. Sürece deyimi başarısız olur bir Contoso\Mary5oturumu varsa. Etki alanınızdaki bir giriş kullanarak sınayın.
USE AdventureWorks2012;
GO
CREATE USER Mary5 FOR LOGIN [Contoso\Mary5] ;
GO
EXEC sp_addrolemember 'Production', 'Mary5'
USE AdventureWorks2012;
GO
CREATE USER Mary5 FOR LOGIN [Contoso\Mary5] ;
GO
EXEC sp_addrolemember 'Production', 'Mary5'
B.Kullanıcı ekleme
Aşağıdaki örnek, veritabanı kullanıcı ekler Mary5için Productionveritabanı rolü geçerli veritabanında.
EXEC sp_addrolemember 'Production', 'Mary5'
EXEC sp_addrolemember 'Production', 'Mary5'
Ayrıca bkz.
Başvuru
Güvenlik depolanan yordamlar (Transact-sql)
sp_addsrvrolemember (Transact-sql)
sp_droprolemember (Transact-sql)
sp_grantdbaccess (Transact-sql)