Brug indirektion for at undgå at manipulere tabeller direkte:
- Har 3 tabeller:Client1, Client2, Client3 med alle indekser, begrænsninger og triggere osv.
- Brug synonymer for at skjule den rigtige tabel, f.eks. Client, ClientOld, ClientToLoad
- For at generere den nye tabel, afkorter/skriver du til "ClientToLoad"
- Så SLIPPER og OPRETTER du synonymerne i en transaktion, så
- Klient -> hvad var ClientToLoad
- ClientOld -> hvad var klient
- ClientToLoad -> hvad var ClientOld
Du kan bruge SELECT base_object_name FROM sys.synonyms WHERE name = 'Client'
for at finde ud af, hvad den aktuelle indirektion er
Dette virker på alle udgaver af SQL Server:den anden måde er "partitionsskift", som kræver virksomhedsudgave