Spostamento di un oggetto di database in un altro schema
Quando si sposta un oggetto di database in uno schemadiverso, è possibile utilizzare più facilmente il refactoring del database e aggiornare in modo accurato tutti i riferimenti a tale oggetto nel progetto di database. Ad esempio, è possibile decidere di suddividere il database in più schemi, magari per aumentare la sicurezza o per organizzarla in modo più logico. Dopo tale suddivisione, è necessario non solo spostare uno o più oggetti nel nuovo schema ma aggiornare anche ogni riferimento completo a tale oggetto. È possibile commettere errori quando si modificano manualmente tutti i riferimenti al nuovo schema. Tramite il refactoring del database, è possibile trovare e aggiornare automaticamente questi riferimenti.
Verifica della correttezza delle modifiche con il log del refactoring
Quando si sposta un oggetto di database in uno schema diverso, viene aggiunta una voce al log di refactoring del progetto di database. Quando si implementano le modifiche, il log consente di assicurarsi che l'oggetto corrispondente nell'ambiente di destinazione venga rinominato nel modo corretto. In caso contrario, l'oggetto esistente verrebbe eliminato e verrebbe aggiunto un oggetto con il nuovo nome. Il log è contenuto in un file XML denominato NomeProgetto.refactorlog. Archiviare questo file nel controllo delle versioni durante l'archiviazione degli altri file che compongono il progetto di database. Il file NomeProgetto.refactorlog contiene solo le informazioni sulle operazioni di refactoring che richiedono una gestione speciale durante la distribuzione.
Distribuzione
Quando si utilizza il refactoring, si aggiorna solo il progetto di database, non un database di produzione. Adottando questa strategia si ottengono tutti i vantaggi dei progetti di database, inclusi il controllo della versione e lo sviluppo in team. Quando si distribuiscono le modifiche, il file di log del refactoring consente di mantenere inalterato lo scopo delle modifiche al progetto di database. Ad esempio, è possibile eseguire una ridenominazione anziché operazioni DROP e ADD.
Per ulteriori informazioni, vedere Compilazione e distribuzione di database in un ambiente di sviluppo isolato.
Nota
In un ambiente team, eseguire gli unit test del database e dell'applicazione prima di distribuire le modifiche a un server di produzione. Per ulteriori informazioni, vedere Avvio dello sviluppo in team di database.
Attività comuni
Nella tabella seguente è possibile trovare descrizioni di attività comuni che supportano questo scenario e collegamenti a ulteriori informazioni sull'esecuzione corretta di queste attività.
Attività |
Argomenti correlati |
---|---|
Fare pratica: è possibile acquisire familiarità con lo spostamento di oggetti di database in uno schema diverso, oltre ad altri tipi di refactoring, eseguendo la procedura dettagliata. |
Procedura dettagliata: applicare tecniche di refactoring del database |
Spostare un oggetto di database in un altro schema: è possibile utilizzare il refactoring per spostare un oggetto di database in un altro schema e aggiornare automaticamente tutti i riferimenti a tale oggetto nel progetto di database. Nel corso dell'operazione di refactoring, è possibile visualizzare in anteprima le modifiche prima di applicarle. |
Procedura: spostare un oggetto di database in un altro schema |
Annullare un'operazione di refactoring: è possibile annullare un'operazione di refactoring nella sessione corrente di Visual Studio. |
Procedura: Annullare un'operazione di refactoring del database |
Distribuire le modifiche di refactoring del database: dopo avere eseguito il refactoring del progetto di database, è necessario distribuire le modifiche relative in un database di destinazione. Le modifiche vengono in genere distribuite nell'ambiente di sviluppo isolato in modo da testarle prima di archiviarle nel controllo della versione. |
Procedura: distribuire le modifiche del refactoring del database |
Risolvere i problemi: è possibile acquisire ulteriori informazioni sulla risoluzione dei problemi relativi al refactoring del database. |
Scenari correlati
Ridenominazione di tutti i riferimenti a un oggetto di database
Rinominare riferimenti a un server o a un database
Specifica completa dei nomi degli oggetti di database
Espandere i caratteri jolly nelle istruzioni SELECT