我用下面的,如果它不存在於數據庫中創建用戶:創建數據庫用戶有條件語法錯誤
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 *。我已經更新了代碼來處理這種情況。 –