sp_adduser (Transact-SQL)
Yeni bir kullanıcı, geçerli veritabanına 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.Use create user onun yerine. |
Sözdizimi
sp_adduser [ @loginame = ] 'login'
[ , [ @name_in_db = ] 'user' ]
[ , [ @grpname = ] 'role' ]
Bağımsız değişkenler
[ @ loginame = ] 'login'
Adı SQL Server oturumu veya Windows oturum açma.loginolan bir sysname, ile hiçbir varsayılan.loginVarolan bir olmalıdır SQL Server oturumu veya Windows oturum açma.[ @ name_in_db = ] 'user'
Yeni veritabanı kullanıcı adıdır.userolan bir sysname, varsayılan değer null.user Belirtilmezse, yeni veritabanı kullanıcı adı varsayılan olarak login adı.Belirtme user sağlayan yeni kullanıcı adı veritabanında farklı server -düzey oturum açma adı.[ @ grpname = ] 'role'
Hangi yeni kullanıcı bir üyedurumuna gelir veritabanı rolü kullanılır.roleİş sysname, varsayılan değer null.roleGeçerli veritabanında geçerli bir veritabanı rolü olmalıdır.
Dönüş Kodu Değerleri
0 (başarılı) veya 1 (hata)
Açıklamalar
sp_adduser da kullanıcı adını taşıyan bir şema oluşturacak.
Kullanıcı eklendikten sonra grant, deny, kullanın ve kullanıcı tarafından gerçekleştirilen etkinlikleri denetlemek izinleri tanımlamak için deyimleri revoke.
Use sys.server_principals geçerli oturum açma adlarının bir listesini görüntülemek için.
Use sp_helprole geçerli rol adlarının bir listesini görüntülemek için.Rol belirttiğinizde, kullanıcı rolü için tanımlanan izinleri otomatik olarak kazanır.Rol belirtilmezse, kullanıcı için varsayılan izinleri kazançları ortak rolü.Kullanıcı rolü için bir değer eklemek için user name sağlanmalı.(usernameaynı olabilir login_id.)
Kullanıcı Konuk her veritabanında zaten yer alıyor.Kullanıcı ekleniyor Konuk daha önce devre dışı bırakıldığı, bu kullanıcı sağlayacaktır.Varsayılan olarak, kullanıcı Konuk yeni veritabanları devre dışıdır.
sp_adduser kullanıcı tanımlı bir işlem içinde yürütülemiyor.
Ekleyemezsiniz bir Konuk kullanıcı için bir Konuk kullanıcı her veritabanı içinde zaten.Etkinleştirmek için Konuk kullanıcı, grant Konuk gösterilen connect izni:
GRANT CONNECT TO guest;
GO
İzinler
Veritabanı sahipliğini gerektirir.
Örnekler
A.Bir veritabanı kullanıcısı ekleme
Aşağıdaki örnek, veritabanı kullanıcı ekler Vidur Varolan Recruiting rolü geçerli veritabanında varolan kullanarak SQL Server login Vidur.
EXEC sp_adduser 'Vidur', 'Vidur', 'Recruiting'
B.Aynı oturum açma kimliğiile bir veritabanı kullanıcısı ekleme
Aşağıdaki örnek, kullanıcı ekler Arvind için geçerli veritabanına SQL Server login Arvind.Bu kullanıcı için varsayılan üye ortak rolü.
EXEC sp_adduser 'Arvind'
C.Kendi server -düzey oturum adından farklı bir veritabanı kullanıcı ekleme
Aşağıdaki örnek ekler SQL Server login BjornR geçerli veritabanında bir kullanıcı adına sahip Bjorn, ve ekler veritabanı kullanıcı Bjorn için Production veritabanı rolü.
EXEC sp_adduser 'BjornR', 'Bjorn', 'Production'