Información general sobre la refactorización de cambio de nombre
Actualización: noviembre 2007
Puede usar la refactorización de base de datos para cambiar el nombre de un objeto de esquema. El nuevo nombre se actualizará automáticamente en los objetos que hagan referencia al objeto cuyo nombre se ha cambiado. Por ejemplo, si cambia el nombre de una columna de una tabla, el nombre de dicha columna se actualizará en los procedimientos almacenados que hagan referencia a la columna. Algunos de los objetos de esquema a los que puede cambiar el nombre son:
Tablas
Columnas de tablas, vistas y funciones
Parámetros de procedimientos almacenados
Tradicionalmente, la operación de cambiar el nombre de objetos de base de datos ha sido fácil, pero no así la de actualizar los objetos que hacen referencia al objeto cuyo nombre se ha modificado. La actualización de estos objetos era una tarea manual que requería disponer de un registro de todos los objetos que hacen referencia al objeto cuyo nombre se ha modificado, o que implicaba utilizar sp_depends para obtener esa información. Como sp_depends no siempre devolvía los datos esperados, a veces no era posible obtener esa información de manera confiable. La refactorización de base de datos permite cambiar los nombres de los objetos de base de datos y actualizar las referencias en otros objetos de manera confiable. De forma predeterminada, las actualizaciones sólo se aplican a objetos cuyas definiciones no producen advertencias ni errores.
Además de actualizar automáticamente objetos de esquema que hacen referencia a otros objetos, la refactorización de base de datos también permite actualizar planes de generación de datos, secuencias de comandos y pruebas unitarias. Para obtener más información, vea Consideraciones antes de cambiar nombres de objetos de base de datos.
Nota: |
---|
Al cambiar el nombre de un objeto de base de datos, no se cambia el nombre del archivo .sql asociado a ese objeto. Puede cambiar el nombre del archivo manualmente en la ventana Explorador de soluciones. |
Usos adicionales de la refactorización de cambio de nombre
La refactorización de cambio de nombre puede ayudarle también a realizar las siguientes tareas comunes:
En un entorno sin distinción entre mayúsculas y minúsculas, puede cambiar el uso de las mayúsculas de un nombre de objeto del esquema y de todas sus referencias para adaptarlo a las convenciones de uso de mayúsculas de su organización. Por ejemplo, si su proyecto de base de datos tiene una mezcla de referencias a "Miid" y "MiID", puede utilizar la refactorización de cambio de nombre para cambiar todas las referencias a "MiID".
Nota: Las referencias en las que el uso de mayúsculas y minúsculas ya es correcto se actualizan al mismo valor. Si el archivo que contiene esas referencias está bajo control de versiones, se desprotege como parte de la operación de refactorización.
Cambie el nombre de dos o más objetos para que sus nombres y referencias coincidan. Por ejemplo, puede combinar dos nombres de esquema (como "Persona" y "Nombre de Persona") o dos nombres que sólo difieran en el uso de mayúsculas en un entorno con distinción entre mayúsculas y minúsculas (como "MiID" y "Miid").
Agregue corchetes alrededor de un nombre de objeto de esquema y de todas sus referencias para seguir los procedimientos recomendados sobre denominación de objetos. Por ejemplo, puede reemplazar todas las referencias a "MiID" por "[MiID]".
Nota: Las referencias que ya están incluidas entre corchetes se actualizan al mismo valor. Si el archivo que contiene esas referencias está bajo control de versiones, se desprotege como parte de la operación de refactorización.
Al realizar estas tareas, aparecerá un mensaje de error para advertirle de que el objeto de esquema con el nuevo nombre ya existe. Debe hacer clic en Sí para realizar el cambio. No obstante, puede obtener una vista previa de los cambios y excluirlos selectivamente si deja activada la casilla Obtener vista previa de cambios en el cuadro de diálogo Cambiar nombre.
Implementación
La refactorización de bases de datos se basa en proyectos de base de datos. Este enfoque significa que no realizan los cambios directamente en una base de datos activa, sino en el proyecto de base de datos. Esta estrategia ofrece todas las ventajas de los proyectos de base de datos, como el control de código fuente y el desarrollo en equipo. Después puede implementar los cambios realizados en el proyecto de base de datos mediante la característica de implementación de proyecto de base de datos. Para obtener más información, consulte Generar e implementar esquemas de base de datos.
Nota: |
---|
En un entorno de equipo se deben ejecutar pruebas unitarias de aplicación y de base de datos antes de implementar los cambios en un servidor de producción. Para obtener más información, vea Información general acerca de la creación e implementación de bases de datos en entornos de equipo. |
El cuadro de diálogo Vista previa de los cambios
Al utilizar la refactorización para cambiar el nombre de un objeto de base de datos, puede obtener una vista previa de los cambios. Esta opción le permite ver los cambios que se aplicarán a todos los objetos que hacen referencia al objeto cuyo nombre se va a cambiar.
El cuadro de diálogo Vista previa de los cambios contiene un panel superior y un panel inferior. El panel superior contiene un árbol que muestra los objetos que se van a modificar y el panel inferior muestra la secuencia de comandos que se generará para realizar los cambios. Al hacer clic en un objeto, el panel superior muestra el nombre anterior y el panel inferior muestra el nuevo nombre. Para obtener más información, vea Cómo: Obtener la vista previa de los cambios de nombre.
Reemplazar referencias a los servidores y bases de datos
En definiciones de objetos o scripts, puede incluir referencias a los objetos de otras bases de datos si especifica los nombres de las bases de datos que contienen los objetos a los que hace referencia. Si las referencias y los objetos están en servidores diferentes, las referencias también deben especificar los nombres de los servidores a cuyos objetos hace referencia. Puede especificar bases de datos y servidores por nombre o por variable. Después de crear estas referencias, puede utilizar la refactorización para actualizarlas si debe especificar después un nombre diferente, reemplazar un nombre con una variable, reemplazar una variable con un nombre o reemplazar una variable con otra. Para obtener más información sobre las referencias de bases de datos cruzadas, consulte Introducción a las referencias entre bases de datos. Para obtener más información sobre cómo cambiar el nombre de estas referencias, vea Cómo: Cambiar el nombre de referencias a un servidor o una base de datos.
Vea también
Tareas
Tutorial: Implementar cambios de refactorización de base de datos
Conceptos
Introducción a la terminología de Database Edition