2014-06-09 132 views
1

我遵循the MS guidelines,他們給出了具體示例如下。無法將用戶添加到角色

ALTER ROLE Sales ADD MEMBER Barry; 

然而,當我進行相應的操作,我得到一個錯誤,告訴我,關鍵字下和線上的「關鍵字‘ADD’附近有語法錯誤」 ADD。當我將鼠標懸停在其上時,我可以看到該工具提示顯示「期待WITH」。

據我所知,WITH用於角色添加用戶的其他變更。所以我的問題是雙重的。

  1. 我該怎麼做才能將用戶添加到角色中?
  2. 錯誤的工具提示是什麼?

Somewhere else on the internet,我看到用戶通過調用存儲過程來添加到角色。這引發了一個問題,MSDN鏈接正在討論什麼 - 就好像不可能使用該腳本。對這些問題的建議值得歡迎,因爲我對數據庫的經驗不足,感覺就像冰上的駝鹿。

我的配置: 的Microsoft SQL Server Management Studio中10.50.4000.0
Microsoft數據訪問組件(MDAC)6.1.7601.17514
微軟MSXML 3.0 4.0 5.0 6.0
的Microsoft Internet Explorer 9.0.8112.16421
的Microsoft .NET Framework 2.0.50727.5466
操作系統6.1.7601

回答

4

您正在使用什麼版本的SQL?你將只能在2012年工作中的語法起

相反,你應該執行sp_addrolemember:

EXEC sp_addrolemember 'Sales', 'Barry' 
+1

請參閱有關版本的編輯。人們會認爲我用來創建腳本**的版本與本身**兼容...... :) –

1

嘗試......

EXECUTE sp_addrolemember 'Sales', 'Barry' 
+0

知道,但爲什麼MS給出的例子嗎?他們的意思是什麼?他們什麼時候有用?當我編寫已經存在的數據庫時,我得到了這個聲明。結論是MS自己的腳本給出了一個錯誤的輸出。或者我錯過了什麼? –

+0

我認爲你正在看SQL Server 2014 Syntax,我對其他方式不太瞭解,也許是因爲它只是在Sql Server中新增的,但我總是使用這個系統存儲過程更容易記住。 –

+0

請參閱有關版本的編輯。有人會認爲我用來創建腳本**的版本與本身**兼容...... :) –

1

試試這個:EXEC sp_addrolemember N'Sales', N'Barry'

相關問題