Nota
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare ad accedere o modificare le directory.
L'accesso a questa pagina richiede l'autorizzazione. È possibile provare a modificare le directory.
Si applica a: SQL Server
Database SQL di Azure
Istanza gestita di Azure SQL
Azure Synapse Analytics
Confronto schema consente di confrontare due definizioni di database. L'origine e la destinazione del confronto possono essere qualsiasi combinazione di database connesso, progetto di database SQL o .dacpac file. Al termine del confronto, i risultati vengono visualizzati come un set di azioni che rendono la destinazione uguale all'origine. Le differenze tra i modelli di database vengono presentate come un diff del controllo del codice sorgente.
Se la destinazione di confronto dello schema è un progetto SQL o un database, è possibile aggiornare la destinazione direttamente dall'interfaccia Confronto schema o generare uno script di aggiornamento con lo stesso effetto.
Confronto schema offre le funzionalità seguenti:
- Confrontare gli schemi tra due
.dacpacfile, database o progetti di database SQL. - Visualizzare i risultati come set di azioni in modo che corrispondano a una destinazione rispetto all'origine.
- Escludere selettivamente le azioni elencate nei risultati.
- Impostare le opzioni che controllano l'ambito del confronto.
- Applicare le modifiche direttamente alla destinazione o generare uno script per applicare le modifiche in un secondo momento.
- Salvare il confronto come
.scmpfile per il riutilizzo.
Prerequisiti
- SQL Server Management Studio 22.7 o versione successiva
- Carico di lavoro DevOps del database (obbligatorio solo quando si confrontano progetti di database SQL)
Avvia confronto tra schemi
È possibile aprire Confronto schema in SSMS da diversi punti di ingresso.
Esplora oggetti
Fare clic con il pulsante destro del mouse su un database in Esplora oggetti e selezionare Tasks>Schema Compare (anteprima). Il database selezionato viene impostato automaticamente come origine.
Esplora soluzioni
Fare clic con il pulsante destro del mouse su un progetto di database SQL in Esplora soluzioni e selezionare Schema Compare (preview). Il progetto selezionato viene impostato automaticamente come origine.
Annotazioni
Per usare progetti di database SQL in Esplora soluzioni, è necessario il carico di lavoro Database DevOps.
Menu Strumenti
Scegliere Confronto schema (anteprima) dal menu Strumenti. Viene visualizzata la finestra Confronto schema senza un'origine o una destinazione predefinita.
Selezionare l'origine e la destinazione
Dopo l'apertura di Schema Compare, selezionare l'origine e la destinazione per il confronto. Ognuno può essere un database connesso, un .dacpac file o un progetto di database SQL.
- Database: connettersi a un'istanza del database in esecuzione. L'origine è la definizione del database che si vuole usare come base per le modifiche apportate alla destinazione.
-
Applicazione a livello dati (.dacpac): passare al file
.dacpaccompilato. Un.dacpaccontiene un'istantanea di uno schema di database. - Database Project: selezionare un project di database SQL aperto. Richiede il carico di lavoro Database DevOps.
La destinazione è la definizione del database a cui si desidera valutare e potenzialmente applicare le modifiche.
Eseguire ed esaminare il confronto
Selezionare Confronta sulla barra degli strumenti per avviare il processo di confronto.
Al termine del confronto, il riquadro Risultati mostra le differenze strutturali tra l'origine e la destinazione. I risultati del confronto raggruppano tutte le differenze in base all'azione, ad esempio Elimina, Modifica o Aggiungi.
Ogni riga identifica l'oggetto nello schema di origine o di destinazione (o entrambi) e l'azione eseguita dal processo sullo schema di destinazione, per rendere l'oggetto di destinazione uguale all'oggetto di origine. Se si rinomina un oggetto o lo si sposta in un nuovo schema, i nomi di origine e di destinazione sono diversi. Il nome dell'origine viene visualizzato in grassetto per evidenziare la differenza.
Per impostazione predefinita, l'elenco risultati nasconde gli oggetti uguali in entrambi gli schemi o che non sono supportati per l'aggiornamento, ad esempio oggetti predefiniti. Selezionare i pulsanti di filtro appropriati nella barra degli strumenti per visualizzare questi oggetti.
Per modificare la preferenza di raggruppamento, selezionare l’elenco a discesa Risultati del gruppo nella barra degli strumenti. Selezionare Tipo per raggruppare i risultati in base al tipo di oggetto, ad esempio tabelle, viste o procedure archiviate.
Escludi differenze
Per impostazione predefinita, l'azione Aggiorna destinazione include tutte le differenze nel proprio ambito. Per escludere le differenze che non si desidera sincronizzare, deselezionare la colonna Includi di ogni riga. La riga diventa immediatamente grigia. Quando Schema Compare aggiorna la destinazione, non tiene conto di quella riga per eventuali modifiche in sospeso.
Se una riga esclusa contiene oggetti dipendenti, ad esempio una riga Table a cui fa riferimento una riga Di visualizzazione , la riga esclusa è disabilitata, ma la casella di controllo non viene deselezionata finché non si deselezionano anche tutte le righe dipendenti. Se si esegue il refactoring di una riga, ad esempio la ridenominazione o lo spostamento in un altro schema, la casella di controllo è disabilitata per tale riga e le relative righe figlio dipendenti.
Opzioni di confronto
Selezionare Opzioni nella barra degli strumenti per configurare gli oggetti confrontati e quali tipi di differenze vengono ignorati. Le opzioni includono:
- Ignora spazi vuoti
- Ignorare gli schemi di partizione
- Ignorare l'ordine delle colonne
È anche possibile configurare i tipi di oggetto inclusi nel confronto, ad esempio tabelle, stored procedure, indici, autorizzazioni e tipi definiti dall'utente.
Applicare le modifiche
Per aggiornare lo schema della destinazione, hai due opzioni:
- Applica: applica le modifiche direttamente al database o al progetto di destinazione dalla finestra Confronto schema.
- Generate Script: generare uno script Transact-SQL che acquisisca le stesse modifiche, che è possibile esaminare ed eseguire in un secondo momento.
Uno script generato viene visualizzato nell'editor di Transact-SQL, in cui è possibile esaminarlo ed eseguirlo su un database.
Salvare i confronti
È possibile salvare la definizione di confronto per Confronto schema come .scmp file, noto come file di confronto dello schema. Questo file archivia informazioni sulle impostazioni di confronto in XML e include:
- Informazioni sulla connessione di origine e destinazione
- Opzioni di confronto
- Tipi di oggetto esclusi
È possibile aprire un .scmp file in SSMS per eseguire nuovamente lo stesso confronto in un secondo momento o per condividere il confronto con altri utenti.