Bonsoir à tous
J'ai un problème avec une requete de sp_addlogin quand la variable est activée
J'espere pouvoir trouver la solution parmis vous , car je séche !!
Requete fonctionnelle mais sans variable :
Requete que j'aimerais faire fonctionner avec la variable :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 use WinXS select /* u.name as Utilisateur ,g.name as Groupe ,x21.LoginName */ 'exec sp_addlogin N'''+ x21.LoginName + ''',''' + x21.LoginName+''', WinXS, english' FROM sysusers u JOIN sysusers g ON u.gid = g.uid join WinXS..x21 x21 ON u.name = x21.LoginName WHERE g.name LIKE 'WinXS%' order by g.name, u.name
elle me remonte l'erreur suivante :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19 use WinXS DECLARE @SQL VARCHAR(8000) select @SQL = ISNULL(@SQL, 'USE master; ') + 'exec sp_addlogin N'''+ x21.LoginName + ''',''' + x21.LoginName+''', WinXS, english' /* u.name as Utilisateur ,g.name as Groupe ,x21.LoginName */ FROM sysusers u JOIN sysusers g ON u.gid = g.uid join WinXS..x21 x21 ON u.name = x21.LoginName WHERE g.name LIKE 'WinXS%' order by g.name, u.name -- PRINT @SQL USE master EXEC (@SQL)
Serveur*: Msg 170, Niveau 15, État 1, Ligne 1
Line 1: Incorrect syntax near 'sp_addlogin'.
Pour exemple celle-ci fonctionne parfaitement :
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13 Use WinXS DECLARE @SQL VARCHAR(8000) select @SQL = ISNULL(@SQL, 'USE master; ') + 'EXEC sp_addrole N'''+ g.name + ''' ' FROM sysusers u JOIN sysusers g ON u.gid = g.uid left join WinXS..x21 x21 ON u.name = x21.LoginName WHERE g.name = u.name AND g.name LIKE 'WinXS%' order by g.name, u.name -- PRINT @SQL USE master EXEC (@SQL)
Bonne soirée !
Partager