Skript dynamisch fix ophaned Benutzer nach dem db-restore

Nach dem ausführen einer Datenbank wiederherstellen, ich will laufen ein dynamisches script zu beheben ophaned Benutzer. Mein Skript durchläuft alle Benutzer angezeigt werden, nach der Ausführung von sp_change_users_login 'report' und gilt als "alter user [username] with login = [Benutzername]" - Anweisung zu beheben SID Konflikte. Ich bin immer eine "falsche syntax error on line 15" und kann nicht herausfinden, warum...Hilfe..

DECLARE @Username varchar(100), @cmd varchar(100)
DECLARE userLogin_cursor CURSOR FAST_FORWARD
FOR
SELECT UserName = name FROM sysusers
WHERE issqluser = 1 and (sid IS NOT NULL AND sid <> 0×0)
    AND suser_sname(sid) IS NULL
ORDER BY name
FOR READ ONLY
OPEN userLogin_cursor

FETCH NEXT FROM userLogin_cursor INTO @Username
WHILE @@fetch_status = 0
  BEGIN
    SET @cmd = ALTER USER ‘+@username+‘ WITH LOGIN ‘+@username
    EXECUTE(@cmd)
    FETCH NEXT FROM userLogin_cursor INTO @Username
  END
CLOSE userLogin_cursor
DEALLOCATE userLogin_cursor
InformationsquelleAutor gates | 2010-05-20
Schreibe einen Kommentar