Está trabajando como desarrollador de SQL Server en Life Insurance Company. Tienen el nombre de base de datos TechBrothersIT y uno de los nombres de esquema que utilizan los objetos es TB. Le asignaron la tarea de cambiar el nombre del esquema a LIFE. ¿Cómo haría eso?
Solución:
No existe una forma sencilla de cambiar el nombre de un esquema en la base de datos de SQL Server. Tenemos que seguir los pasos a continuación para realizar este cambio.Paso 1:Crear un nuevo esquema Cree un nuevo esquema con el nombre LIFE, podemos usar el siguiente script.
Create Schema [LIFE]
Paso 2:transfiera los objetos al nuevo esquema. Podemos usar el siguiente script para transferir un solo objeto (tabla, vista, procedimiento almacenado, etc.) a un nuevo esquema.
Use Database ALTER SCHEMA NewSchema TRANSFER OldSchema.ObjectName GO
Digamos que tengo una tabla en TB Schema y puedo usar el siguiente script para pasar a Life Schema.
Alter Schema [LIFE] Transfer TB.[test] ;
La consulta anterior debe repetirse para cada uno de los objetos a transferir del esquema TB al esquema LIFE. Podemos usar la siguiente consulta de selección para generar nuestra consulta Alter para otros objetos en una base de datos para transferir objetos de un esquema a otro.
Declare @SourceSchema VARCHAR(100) Declare @DestinationSchema VARCHAR(100) SET @SourceSchema='TB' SET @DestinationSchema='LIFE' Select 'Alter Schema ['+@DestinationSchema+'] Transfer '
+@SourceSchema+'.['+name+']'
from sys.objects where schema_name(schema_id)=@SourceSchema
Proporcione los valores de las variables @SourceSchema y @DestinationSchema y la consulta generará instrucciones Alter para usted. Copie y ejecute en su ventana de consulta.
Nota: Asegúrese de probar los cambios en el entorno de desarrollo antes de ejecutarlos en entornos UAT y de producción.
Demostración en video:cómo transferir objetos de un esquema a otro en SQL Server