我用下面的,如果它不存在于数据库中创建用户:创建数据库用户有条件语法错误
use DBExample
GO
IF NOT EXISTS (SELECT * from sys.database_role_members WHERE USER_NAME(member_principal_id) = 'user1')
BEGIN
CREATE USER [user1] WITH PASSWORD = 'abc')
END
EXEC sp_addrolemember 'role1', 'user1'
GO
DBExample已经拥有USER1,所以当我尝试运行脚本,SQL Server Management Studio抱怨'user1'附近有'错误的语法。 (在创建用户行中)
我错过了什么使其工作?
我得到一个错误说“已经有登入数据库名为‘user1的’ – confusedKid
好吧,我怀疑已经有映射到数据库用户* USER1 *。我已经更新了代码来处理这种情况。 –