El siguiente procedure es muy útil cuando queremes ejecutar un mismo comando sobre cada una de las bases de datos en SQL Server.

Anexo un ejemplo que muestra los roles existentes en cada una de las bases de datos de un servidor de SQL Server.

exec sp_msForEachDb ' use [?] 
select db_name() as [database_name], r.[name] as [role], p.[name] as [member] from  
    sys.database_role_members m 
join 
    sys.database_principals r on m.role_principal_id = r.principal_id 
join 
    sys.database_principals p on m.member_principal_id = p.principal_id 
where 
    r.name = ''db_owner'''
Como pueden ver es muy sencillo de utilizar, pero recuerden que es un procedimiento indocumentado por lo que podria desaparecer en un futuro, asi que usenlo con cautela.

Necesitas Soporte

Proveemos soporte de base de datos SQL Server, Sybase, Oracle y MySQL. Nuestro servicio, le permite contar con un experto las 24 horas al día los 365 días del año.

Nuestros servicios están diseñados para que solo pague por el soporte que necesita. El pago se realiza de manera mensual basado en el nivel de cobertura que requiera. En promedio este costo va de un 30% a un 60% menos, de lo que le pagaría a un DBA en sitio.

Contactanos