Compartir a través de


Solucionar problemas de comparación de esquemas

Actualización: noviembre 2007

Cuando se comparan dos esquemas de base de datos pueden surgir los problemas que se mencionan en este tema.

Dependencias y scripts de actualización

Para generar los objetos en el orden correcto en un script de actualización, Comparación de esquemas examina las dependencias de objeto. Por ejemplo, si una vista depende de una tabla, la tabla se debe crear antes que la vista. Si el objeto que depende del segundo objeto no tiene un nombre completo que incluya el esquema, quizás no se pueda identificar la dependencia y el script de actualización o de creación incluiría las instrucciones en un orden incorrecto. Esta discrepancia puede producir errores al actualizar un destino para que coincida con un origen o al implementar cambios en una base de datos. Este problema también se aplica a los scripts de generación de base de datos.

Nota:

Para evitarlo, asegúrese de que incluye el esquema en los nombres de los objetos que participen en relaciones de dependencia. En el ejemplo siguiente, podrá estar seguro de que la dependencia se identificará correctamente si cambia el final de la instrucción para que haga referencia a [dbo].[KeysTable] en lugar de KeysTable:

CREATE VIEW [NewUser].[ViewReferencingScalarFunction] AS SELECT Column2, dbo.SimpleMultiplyParamByTwo(PK_Column) AS [Function] FROM KeysTable

Claves simétricas, claves asimétricas y certificados

En Visual Studio Team System Database, no se pueden crear claves simétricas, claves asimétricas o certificados como objetos de base de datos. Al importar un esquema de base de datos, los comentarios de marcador de posición se colocan en el script anterior a la implementación con los nombres de las claves y certificados. Debe editar el script anterior a la implementación para crear esos objetos. De igual forma, cuando se comparan esquemas de base de datos, el script de actualización de esquema no contiene los comandos Transact-SQL (T-SQL) necesarios para crear las claves simétricas, las claves asimétricas o los certificados que no se encuentran. Debe exportar el script de actualización al editor y agregar instrucciones para crear esos objetos. Para obtener más información sobre las instrucciones Transact-SQL (T-SQL), vea Transact-SQL Reference.

Opciones de tabla y de índice

La comparación de esquemas no funciona o hay opciones de script que se establecen con la opción sp_table o sp_index. No hay ninguna solución para este problema.

Se agota el tiempo de espera al comparar bases de datos grandes

Si se produce un error de tiempo de espera al comparar los esquemas de bases de datos grandes, es posible que tenga que aumentar el valor de tiempo de espera. Esta opción no se expone a través de la interfaz de usuario. Debe modificar el valor de QueryTimeoutSeconds almacenado en el Registro, en HKEY_CURRENT_USER\Software\Microsoft\VisualStudio\8.0\DBPro\Database. Se especifica en segundos. De manera predeterminada, el tiempo de espera es de 60 segundos.

Comparar archivos y grupos de archivos

Si un grupo de archivos en una base de datos de destino es de sólo lectura, esa propiedad siempre aparecerá como una diferencia en una comparación de esquemas entre esa base de datos y un proyecto de base de datos. Además, se omite el grupo de archivos primario al comparar los esquemas.

Vea también

Tareas

Cómo: Modificar objetos de base de datos

Cómo: Ver diferencias de datos

Conceptos

Introducción a la terminología de Database Edition