2012-01-24 23 views
6

Estoy tratando de copiar los cambios de DatabaseA a DatabaseB, sin embargo, no sé exactamente cuáles fueron esos cambios.¿Cómo puedo encontrar las diferencias entre dos bases de datos?

¿Hay una secuencia de comandos SQL alrededor que encontrará objetos que son diferentes entre las bases de datos, a continuación, generar un script para actualizar DatabaseB para que coincida con DatabaseA?

estoy usando SQL 2005, y no quieren perder los datos existentes en DatabaseB

+0

Puede obtener mejores respuestas en el sitio para DBA: http://dba.stackexchange.com/ –

+3

Eche un vistazo a Red Gate SQL Compare. – Yuck

+0

+1 para SQL Compare. Por mucho que odie a Redgate por descuartizar Reflector, es un producto de calidad. – Jamiec

Respuesta

3

Existen herramientas para comparar esquemas y datos de Red Gate que hacen exactamente lo que estás buscando. También hay algunos otros en el mercado, como Apex SQL Compare. Pero, si tiene la suerte de tener Visual Studio 2010 Premium o Ultimate Edition, existe una herramienta de comparación integrada en esas versiones.

http://www.apexsql.com/default.aspx

http://www.red-gate.com/products/sql-development/sql-compare

http://msdn.microsoft.com/en-us/library/dd193250.aspx

De lo contrario, vas a tener que usar servidores vinculados y un montón de consulta contra el INFORMATION_SCHEMA.

Algunas de esas herramientas de software que puede usar a modo de prueba y probablemente obtenga lo que necesita sin tener que comprar una licencia completa.

+0

Gracias, no sabía que VS 2010 Premium/Ultimate tenía esta característica. También quiero probar el software de Redgate porque me gustó Reflector. – Rachel

+0

RedGate es mi herramienta preferida, pero no es barata. ¡Buena suerte! – Vinnie

7

Trate DBComparer.

+0

¿Funciona esto en SQL Server 2016 y superior? Dice 2008 y 2005 en el sitio web? –

+1

@UsamaAhmed sí, lo intenté hoy y funciona muy bien. –

2

He usado "SQL Compare" y "SQL Data Compare" por Red Gate Software, y funcionan como un encanto. No creo que exista un script para hacer el mismo trabajo, porque si existiera, entonces no habría uso y no habría mercado para estos productos.

0

Uso AdeptSQL Diff. Es un producto comercial que se encuentra en www.adeptsql.com. Creo que la licencia de prueba es por 30 días o 50 nuevas empresas.

Cuestiones relacionadas