sql >> Database >  >> RDS >> Sqlserver

Hoe het schema van een object (tabel, weergave, opgeslagen procedure) in SQL Server-database te wijzigen - SQL Server / TSQL-zelfstudie, deel 28

Scenario:
Je werkt als SQL Server-ontwikkelaar bij Life Insurance Company. Ze hebben databasenaam TechBrothersIT en een van de schemanamen die de objecten gebruiken is TB. Ze hebben je de opdracht gegeven om het schema te hernoemen naar LIFE. Hoe zou je dat doen?


Oplossing:

Er is geen eenvoudige manier om de naam van een schema in SQL Server Database te wijzigen. We moeten onderstaande stappen volgen om deze wijziging aan te brengen.
Stap 1:Maak een nieuw schema Maak een nieuw schema met de naam LIFE, we kunnen het onderstaande script gebruiken.
Create Schema [LIFE]
 
 
 Stap 2:Breng de objecten over naar een nieuw schema.  We kunnen het onderstaande script gebruiken om een ​​enkel object (tabel, weergave, opgeslagen procedure enz.) naar een nieuw schema over te brengen.
Use Database
ALTER SCHEMA NewSchema
TRANSFER OldSchema.ObjectName
GO

Stel dat ik een tabel in TB Schema heb en dat ik onderstaand script kan gebruiken om naar Life Schema te gaan.

Alter Schema [LIFE] Transfer TB.[test] ;


De bovenstaande query moet worden herhaald voor elk van de objecten om van het TB-schema naar het LIFE-schema over te zetten. We kunnen de onderstaande selectiequery gebruiken om onze Alter-query voor andere objecten in een database te genereren om objecten van het ene schema naar het andere over te dragen.

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
 
 Geef de variabelen @SourceSchema en @DestinationSchema op en de query genereert Alter-instructies voor u. Kopieer en voer het uit in uw Query-venster. 

Opmerking: Zorg ervoor dat u de wijzigingen in de ontwikkelomgeving test voordat u deze uitvoert in UAT- en productieomgevingen.



Videodemo:objecten overbrengen van één schema naar andere in SQL Server

  1. PostgreSQL:namen van standaardbeperkingen

  2. t-sql select krijg alle maanden binnen een reeks van jaren

  3. Oracle-datum

  4. Controleer of de reeks bestaat in Postgres (plpgsql)