Saltar al contenido

Comparar procedimientos almacenados en múltiples bases de datos (SQL Server)

Ya no busques más por todo internet porque has llegado al espacio correcto, poseemos la respuesta que necesitas recibir sin problema.

Solución:

Hay muchas herramientas para hacer esto. Uno de los mejores es Red-Gate SQL Compare. Otra muy buena alternativa es usar Visual Studio Database Professional para administrar el esquema de su base de datos. Entre otras cosas, hará muy buenas comparaciones de esquemas.

Si no tiene un sistema de equipo SQL Compare o Visual Studio para arquitectos de base de datos (Data Dude) … juegue con esto … SQL 2005 y superior

select t1.name,t1.modify_date,t2.modify_date
 from Database1.sys.procedures t1
join Database2.sys.procedures t2 on t1.name  = t2.name
and  object_definition(t1.object_id) <>  object_definition(t2.object_id)

Puede identificar qué procedimientos (y otros objetos con ligeras modificaciones) son diferentes utilizando el siguiente script.

Para sincronizar bases de datos, es posible que desee probar ApexSQL Diff. Es similar a SQL Compare de Red Gate.

select S1.name [Db1_Schema], O1.name as [Db1_Object], O1.modify_date,
S2.name [Db1_Schema], O2.name as [Db1_Object], O2.modify_date
from database.sys.all_objects O1
inner join database2.sys.all_objects O2 on O1.name = O2.name
inner join database.sys.syscomments C1 on O1.object_id = C1.id
inner join database2.sys.syscomments C2 on O2.object_id = C2.id
inner join database.sys.schemas S1 on O1.schema_id = S1.schema_id
inner join database2.sys.schemas S2 on O2.schema_id = S2.schema_id
where C1.text <> C2.text and
-- remove the line below if you want to search all objects
O1.type = 'P' 

Puntuaciones y reseñas

Si entiendes que ha sido provechoso este artículo, sería de mucha ayuda si lo compartieras con otros juniors de esta manera nos ayudas a difundir este contenido.

¡Haz clic para puntuar esta entrada!
(Votos: 0 Promedio: 0)



Utiliza Nuestro Buscador

Deja una respuesta

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *