Besitzstandwechsel von Tabellen leicht gemacht

Will man bei einer Datenbank eines MS SQL-Servers die Besitzrechte aller Datenbanken ändern, so kann man dieses bekannter weise über „Rechtsklick->Alle Tasks->Berechtigungen verwalten“ erledigen.

Soll der Besitzer aller Tabellen einer Datenbank geändert werden, ist dieses Vorgehensweise allerdings suboptimal. Besser und vor allem schneller geht es in einer solchen Situation mit

sp_MSForEachTable 'sp_changeobjectowner ''?'',''NeuerBesitzer'''

Leider funktioniert diese Methode nicht bei Stored Procedures (SP), hier reicht es allerdings aus, für alle SP ein SQL-Script zu generieren und überall, wo der Benutzer mittels setuser gesetzt wird, diesen gegen den neuen Benutzer auszutauschen (setuser N’NeuerBesitzer‘).