Nota
El acceso a esta página requiere autorización. Puede intentar iniciar sesión o cambiar directorios.
El acceso a esta página requiere autorización. Puede intentar cambiar los directorios.
Applies to: SQL Server
Azure SQL Database
Azure SQL Managed Instance
Azure Synapse Analytics
Comparación de esquemas permite comparar dos definiciones de base de datos. El origen y el destino de la comparación pueden ser cualquier combinación de base de datos conectada, proyecto de base de datos SQL o .dacpac archivo. Una vez finalizada la comparación, los resultados aparecen como un conjunto de acciones que hacen que el destino sea el mismo que el origen. Las diferencias entre los modelos de base de datos se presentan como una diferencia de control de código fuente.
Si el destino de comparación de esquemas es un proyecto sql o una base de datos, puede actualizar el destino directamente desde la interfaz Comparación de esquemas o generar un script de actualización que tenga el mismo efecto.
Comparación de esquemas proporciona las siguientes funcionalidades:
- Compare esquemas entre dos
.dacpacarchivos, bases de datos o proyectos de base de datos SQL. - Vea los resultados como un conjunto de acciones para comparar un objetivo con la fuente.
- Exclusión selectiva de las acciones mostradas en los resultados
- Establecimiento de opciones que controlan el ámbito de la comparación
- Aplique los cambios directamente al destino o genere un script para aplicar los cambios más adelante.
- Guarde la comparación como un
.scmparchivo para reutilizarlo.
Prerequisites
- SQL Server Management Studio 22.7 o una versión posterior
- Carga de trabajo de DevOps para bases de datos (necesaria solo al comparar proyectos de bases de datos SQL)
Iniciar comparación de esquemas
Puede abrir Comparación de esquemas en SSMS desde varios puntos de entrada.
Explorador de objetos
Haga clic con el botón derecho en una base de datos en Explorador de objetos y seleccione Tasks>Schema Compare (versión preliminar). La base de datos seleccionada se establece automáticamente como origen.
Explorador de soluciones
Haga clic con el botón derecho en un proyecto de base de datos SQL en Explorador de soluciones seleccione Schema Compare (versión preliminar). El proyecto seleccionado se establece automáticamente como origen.
Nota:
Para trabajar con proyectos de base de datos SQL en Explorador de soluciones, necesita la carga de trabajo Database DevOps.
Menú Herramientas
En el menú Herramientas, seleccione Comparación de esquemas (versión preliminar). Se abre la ventana Comparación de esquemas sin un origen o destino preestablecidos.
Selección del origen y destino
Una vez que se abra La comparación de esquemas, seleccione el origen y el destino de la comparación. Cada uno puede ser una base de datos conectada, un .dacpac archivo o un proyecto de base de datos SQL.
- Base de datos: conéctese a una instancia de base de datos en ejecución. El origen es la definición de base de datos que desea usar como base para los cambios en el destino.
-
Aplicación de capa de datos (.dacpac): Busque un archivo
.dacpaccompilado..dacpaccontiene una instantánea de un esquema de base de datos. - Database Project: seleccione un project de base de datos SQL abierto. Requiere la carga de trabajo de DevOps de base de datos.
El objetivo es la definición de la base de datos que desea evaluar y a la que quizá desee aplicar cambios.
Ejecutar y revisar la comparación
Seleccione Comparar en la barra de herramientas para iniciar el proceso de comparación.
Cuando finaliza la comparación, el panel Resultados muestra las diferencias estructurales entre el origen y el destino. Los resultados de la comparación agrupan todas las diferencias por acción, como Eliminar, Cambiar o Agregar.
Cada fila identifica el objeto en el esquema de origen o de destino (o ambos) y la acción que toma el proceso en el esquema de destino, para que el objeto de destino sea el mismo que el objeto de origen. Si cambia el nombre de un objeto o lo mueve a un nuevo esquema, los nombres de origen y destino son diferentes. El nombre de origen aparece en negrita para resaltar la diferencia.
De forma predeterminada, la lista de resultados oculta los objetos que son los mismos en ambos esquemas o que no se admiten para la actualización (por ejemplo, objetos integrados). Seleccione los botones de filtro adecuados en la barra de herramientas para mostrar estos objetos.
Para cambiar la preferencia de agrupación, seleccione la lista desplegable Agrupar los resultados de la barra de herramientas. Seleccione Tipo para agrupar los resultados por tipo de objeto, como por tablas, vistas o procedimientos almacenados.
Excluir diferencias
De forma predeterminada, la acción Actualizar destino incluye todas las diferencias en su ámbito. Para excluir las diferencias que no desea sincronizar, desactive la columna Incluir de cada fila. La fila se atenúa inmediatamente. Cuando Schema Compare actualiza el destino, no tiene en cuenta esa fila al aplicar los cambios pendientes.
Si una fila excluida tiene objetos dependientes, como una fila tabla a la que hace referencia una fila Vista , la fila excluida está deshabilitada, pero su casilla no se desactiva hasta que también desactive todas las filas dependientes. Si refactoriza una fila, como cambiar el nombre o moverla a otro esquema, la casilla está deshabilitada para esa fila y sus filas secundarias dependientes.
Opciones de comparación
Seleccione Opciones en la barra de herramientas para configurar qué objetos se comparan y qué tipos de diferencias se omiten. Entre las opciones se incluyen:
- Omitir espacios en blanco
- Omitir esquemas de partición
- Omitir el orden de las columnas
También puede configurar qué tipos de objeto se incluyen en la comparación, como tablas, procedimientos almacenados, índices, permisos y tipos definidos por el usuario.
Aplicar cambios
Para actualizar el esquema del destino, tienes dos opciones:
- Aplicar: aplique los cambios directamente a la base de datos de destino o al proyecto desde la ventana Comparación de esquemas.
- Generate Script: genere un script de Transact-SQL que capture los mismos cambios, que puede revisar y ejecutar más adelante.
Un script generado aparece en el editor de Transact-SQL, donde puede inspeccionarlo y ejecutarlo en una base de datos.
Guardar comparaciones
Puede guardar la definición de comparación para Comparación de esquemas como un .scmp archivo, conocido como archivo de comparación de esquemas. Este archivo almacena información sobre la configuración de comparación en XML e incluye:
- Información de conexión de origen y de destino
- Opciones de comparación
- Tipos de objeto excluidos
Puede abrir un .scmp archivo en SSMS para volver a ejecutar la misma comparación más adelante o para compartir la comparación con otros usuarios.