Usa l'indirizzamento per evitare di manipolare direttamente le tabelle:
- Avere 3 tabelle:Client1, Client2, Client3 con tutti gli indici, vincoli e trigger ecc
- Utilizza sinonimi per nascondere la tabella reale es. Client, ClientOld, ClientToLoad
- Per generare la nuova tabella, tronchi/scrivi in "ClientToLoad"
- Quindi DROP e CREATE i sinonimi in una transazione in modo che
- Client -> cos'era ClientToLoad
- ClientOld -> cos'era il Cliente
- ClientToLoad -> cos'era ClientOld
Puoi usare SELECT base_object_name FROM sys.synonyms WHERE name = 'Client'
per capire qual è l'indirizzamento corrente
Funziona su tutte le edizioni di SQL Server:l'altro modo è il "cambio di partizione" che richiede l'edizione aziendale