cambiar propietario de todos los objetos de la BD

03/06/2004 - 13:47 por isaac | Informe spam
Cómo puedo cambiar automáticamente el propietario de todos los objetos de mi
base de datos. Se ha quedado como propietario un usuario que no tiene inicio
de sesión al recuperarlo de un backup y no puedo eliminarlo.

Se que puedo hacerlo con "sp_chageobjectowner" pero tengo muchos objetos y
necesito algo masivo.

He encontrado respuesta anterior en el foro sp_MSforeachtable pero solo
sirve para cambiar masivamente el propietario de las tablas (que no es poco)
pero tengo tb procedimientos almacenados...

Se lo justito de SQL, perso seguro que tiene que haber algo.

Gracias.
 

Leer las respuestas

#1 Adrian D. Garcia
03/06/2004 - 20:07 | Informe spam
Estuve viendo que el sp_changeobjectowner verifica que no sean tablas de
sistemas, triggers, etc. por lo que dedusco que se podria hacer algo masivo.

Si ejecutas este select desde el Query Analizer sobre la base de datos en
cuestion te generara las sentencias necesarias para la ejecucion del cambio
para cada objeto que se pueda cambiar.

SELECT 'EXEC sp_changeobjectowner ''' + name + ''', ''nuevoduenio''' from
SYSobjects

Luego tomas el resultado y lo ejecutas como un script.
Por cada objeto que no pueda cambiar de owner te generara un mensaje de
error pero si los cambiara a los que pueda hacerlo.
Como medida de precaucion generaria un backup/resguardo de la base de datos
de de ejecutar esto.

Saludos
Adrian D. Garcia
MCSD
NDSoft Consultoria y Desarrollo

"isaac" wrote in message
news:c9n2tl$2u5$
Cómo puedo cambiar automáticamente el propietario de todos los objetos de


mi
base de datos. Se ha quedado como propietario un usuario que no tiene


inicio
de sesión al recuperarlo de un backup y no puedo eliminarlo.

Se que puedo hacerlo con "sp_chageobjectowner" pero tengo muchos objetos y
necesito algo masivo.

He encontrado respuesta anterior en el foro sp_MSforeachtable pero solo
sirve para cambiar masivamente el propietario de las tablas (que no es


poco)
pero tengo tb procedimientos almacenados...

Se lo justito de SQL, perso seguro que tiene que haber algo.

Gracias.


Preguntas similares