Sqlserver
 sql >> Baza danych >  >> RDS >> Sqlserver

Jak zmienić schemat obiektu (tabela, widok, procedura składowana) w bazie danych SQL Server — samouczek SQL Server / TSQL, część 28

Scenariusz:
Pracujesz jako programista SQL Server w firmie ubezpieczeniowej na życie. Mają nazwę bazy danych TechBrothersIT, a jedną z nazw schematów używanych przez obiekty jest TB. Przydzielili ci zadanie zmiany nazwy schematu na ŻYCIE. Jak byś to zrobił?


Rozwiązanie:

Nie ma prostego sposobu zmiany nazwy schematu w bazie danych SQL Server. Aby wprowadzić tę zmianę, musimy wykonać poniższe kroki.
Krok 1:Utwórz nowy schemat Utwórz nowy schemat o nazwie LIFE, możemy użyć poniższego skryptu.
Create Schema [LIFE]
 
 
 Krok 2:Przenieś obiekty do nowego schematu.  Możemy użyć poniższego skryptu, aby przenieść pojedynczy obiekt (tabela, widok, procedura składowana itp.) do nowego schematu.
Use Database
ALTER SCHEMA NewSchema
TRANSFER OldSchema.ObjectName
GO

Powiedzmy, że mam tabelę w schemacie TB i mogę użyć poniższego skryptu, aby przejść do schematu życia.

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


Powyższe zapytanie należy powtórzyć dla każdego obiektu, który ma zostać przeniesiony ze schematu TB do schematu LIFE. Możemy użyć poniższego zapytania wybierającego, aby wygenerować nasze zapytanie Alter dla innych obiektów w bazie danych, aby przenieść obiekty z jednego schematu do drugiego.

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
 
 Podaj wartości zmiennych @SourceSchema i @DestinationSchema, a zapytanie wygeneruje dla Ciebie instrukcje Alter. Skopiuj i uruchom w oknie zapytania. 

Uwaga: Upewnij się, że przetestowałeś zmiany w środowisku programistycznym przed uruchomieniem w środowiskach UAT i produkcyjnych.



Prezentacja wideo:Jak przenieść obiekty z jednego schematu do innych w SQL Server

  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Sztuczki dla ciągłego doskonalenia monitorowania bazy danych

  2. Jak zaktualizować klucz podstawowy

  3. Skonfiguruj zawsze włączone grupy dostępności programu SQL Server między dwiema replikami synchronicznymi. Część 2

  4. Jak przekonwertować listę rozdzielaną przecinkami na wiersze w SQL Server

  5. Nie można wstawić jawnej wartości dla kolumny tożsamości w tabeli „tabela”, gdy IDENTITY_INSERT jest ustawione na OFF