Impossible d'append l'user à db_datareader via un script

J'ai le script suivant:

ALTER ROLE [db_datareader] ADD MEMBER [DomainGroup123] 

quand je l'exécute sur SQL Server 2008 R2, j'obtiens cette erreur:

Msg 156, niveau 15, état 1, ligne 1
Syntaxe incorrecte près du mot key 'ADD'.

J'ai regardé en ligne, et trouvé des exemples qui utilisent cette déclaration exacte (mais avec un user différent.)

J'ai vérifié que la connection existe et est un user valide sur la database que j'utilise. J'ai aussi des permissions SA sur le server.

Que suis-je en train de faire?

Utilisez sp_addrolemember.

 EXECUTE sp_addrolemember db_datareader, 'UserName' 

Trouvé cette réponse: https://stackoverflow.com/a/456365/16241

Cela m'a montré que je peux l'exécuter comme ceci:

 exec sp_addrolemember db_datareader, [DomainGroup123] 

Je l'ai fait et ça a marché.

J'ai remarqué que selon la version du server, j'ai besoin d'un des suivants.

 alter role RoleName add member UserName 

ou

 execute sp_addrolemember RoleName, UserName 

Je pense à changer mon approche du tâtonnement à une sorte de conditionnel mais (a) cette opération est rarement effectuée dans mon cas et (b) je suis un peu paresseux de nos jours.