Mam następujący skrypt:Nie można dodać użytkownika do db_datareader poprzez skrypt
ALTER ROLE [db_datareader] ADD MEMBER [DomainGroup123]
gdy uruchomię to na SQL Server 2008 R2 otrzymuję ten błąd:
Msg 156, Level 15, State 1, Line 1
Incorrect syntax near the keyword 'ADD'.
Szukałem w Internecie i znalazłem examples, które używają tej dokładnej instrukcji (ale z innym użytkownikiem).
Sprawdziłem dwukrotnie, czy login istnieje i czy jest prawidłowym użytkownikiem bazy danych, z której korzystam. Mam również uprawnienia SA na serwerze.
Co mam na myśli?
Mimo że znalazłeś już rozwiązanie, zwróć uwagę, że dokumentacja dla 'ALTER ROLE' pokazuje, że wypróbowana składnia jest poprawna tylko w [SQL Server 2012] (http://msdn.microsoft.com/en- us/library/ms189775 (v = sql.110) .aspx), a nie [SQL Server 2008 R2] (http://msdn.microsoft.com/en-us/library/ms189775 (v = sql.105) .aspx). – Pondlife
@Pondlife ma rację. Uwaga: Powinieneś używać "ALTER ROLE" dla każdego przyszłego rozwoju w SS2012 na górze. Dowód: Uwaga firmy Microsoft "Ważne" tutaj w [sp_addrolemember] (http://msdn.microsoft.com/en-us/library/ms187750.aspx) wyraźnie mówi o używaniu "ALTER ROLE". – MikeTeeVee