Hallo Fellows

Es handelt sich um MS SQL aber da sich die 2 Query-Sprachen nicht gross Unterscheiden hoffe ich das mir trotzdem jemand von euch helfen kann.

Ich möchte auf jeder DB einen User erstellen welcher auf ein bestimmtes Login auf dem Server gemappt ist. Das Statement welches den User erstellt habe ich bereits getestet und das funkioniert, das wäre:

Code:
USE [DB]
GO
CREATE USER [VitUiWebApplicationOverview] FOR LOGIN [VitUiWebApplicationOverview] WITH DEFAULT_SCHEMA=[dbo]
GO
USE [DB]
GO
EXEC sp_addrolemember N''db_datawriter'', N''VitUiWebApplicationOverview''
GO
USE [DB]
GO
EXEC sp_addrolemember N''db_datareader'', N''VitUiWebApplicationOverview''
GO
Hier nun mein Versuch mit der System-Store Procedure 'sp_MSforeachdb'

Code:
DECLARE @command varchar(1000) 
SELECT @command = 
'IF ''?'' LIKE ''TT%'' AND ? NOT LIKE ''TTSome%'' 
BEGIN USE ? 
EXEC (''

USE [?]
GO
CREATE USER [User] FOR LOGIN [User] WITH DEFAULT_SCHEMA=[dbo]
GO
USE [?]
GO
EXEC sp_addrolemember N''db_datawriter'', N''User''
GO
USE [?]
GO
EXEC sp_addrolemember N''db_datareader'', N''User''
GO


'') 
END' 



EXEC sp_MSforeachdb @command
Fehler ist : Msg 102, Level 15, State 1, Line 11
Incorrect syntax near 'db_datawriter'.

Any help appreciated.

~ L.L.

---------- Post added at 09:35 ---------- Previous post was at 08:57 ----------

Ich habe es selbst lösen können.
Für alle die es interessiert, hier die Lösung:

Code:
DECLARE @command varchar(1000) 
SELECT @command = 
'IF ''?'' LIKE ''TT%'' AND ''?'' NOT LIKE ''TTSome%'' 
BEGIN USE ? 
EXEC (''

USE [?]

IF NOT EXISTS (SELECT * FROM sys.sysusers WHERE name=''''User'''')

CREATE USER [User] FOR LOGIN [User] WITH DEFAULT_SCHEMA=[dbo]

EXEC sp_addrolemember N''''db_datawriter'''', N''''User''''

EXEC sp_addrolemember N''''db_datareader'''', N''''User''''

'') 
END' 

EXEC sp_MSforeachdb @command
Der Thread kann geschlossen werden, sorry

~ L.L.