Avvio dello sviluppo in team di database che fanno riferimento ad altri database

Prima di potere gestire le modifiche a uno schema di database, è necessario creare un progetto di database e quindi importare oggetti e impostazioni dal database che si desidera gestire. Se un oggetto del database fa riferimento a un oggetto in un altro database, è necessario dichiarare anche il database e il server a cui si fa riferimento e il database nelle proprietà del progetto di database. Poiché un progetto di database è una rappresentazione offline del database, è possibile inserirlo nel controllo della versione e quindi distribuire le modifiche iterative in un ambiente di sviluppo isolato. I membri del team possono testare le modifiche in modo indipendente e condividerle con il team dopo il completamento di tutti i test. Adottando questo approccio, si contribuisce a regolare la qualità del codice del database prima di distribuirlo in un ambiente di produzione.

Scelta di un tipo di progetto di database

Quando si crea un progetto di database, è possibile scegliere il tipo di progetto che corrisponde alla versione di SQL Server. Ad esempio, se il database che si desidera gestire è basato su SQL Server 2005, specificare Progetto di database SQL Server 2005 o Creazione guidata SQL Server 2005. Se si utilizza la procedura guidata, non solo è possibile creare il progetto, ma anche configurare alcune impostazioni di compilazione e distribuzione, nonché importare impostazioni e oggetti di database.

Importazione di impostazioni e oggetti di database

Dopo avere creato il progetto, è possibile importare gli oggetti e le impostazioni da un'istanza del database o da uno script. Dopo l'importazione di un database, le relative definizioni di oggetti vengono convalidate e le istruzioni che non possono essere analizzate vengono aggiunte al file ScriptsIgnoredOnImport.sql.

Dichiarazione di riferimenti a file .dbschema e progetti di database

Dopo l'importazione di un database, è necessario dichiarare i riferimenti tra database nelle proprietà del progetto per risolvere gli avvisi. Quando si dichiara ciascun riferimento, si definiscono le variabili per il database e il server a cui si fa riferimento. Per ogni variabile è possibile specificare un valore diverso in base ai diversi ambienti a cui si prevede di distribuire il progetto.

Quando si dichiara un riferimento, specificare un altro progetto di database o un file schema di database con estensione dbschema come destinazione del riferimento. I file schema di database vengono creati quando si compila un progetto di database o quando si importa un schema tramite lo strumento della riga di comando. Inoltre, è possibile specificare questa destinazione in base al nome o a una variabile sostituita dal valore adatto quando si compila il progetto. Per semplificare la gestione, è possibile aggiornare gli oggetti nel progetto di database in modo che vengano utilizzate le variabili per far riferimento agli oggetti di altri database. Per ulteriori informazioni, vedere Rinominare riferimenti a un server o a un database. Quando si compila il progetto di database, le variabili vengono sostituite dai valori specificati.

È necessario fare riferimento a un altro progetto di database come destinazione se l'istruzione seguente è vera:

  • È necessario modificare sia agli schemi del database che conterrà il riferimento che al database a cui si fa riferimento. Quando si distribuisce il progetto di database che contiene il riferimento, verrà distribuito anche il progetto di database a cui si fa riferimento.

È necessario fare riferimento a un file schema di database con estensione dbschema se una delle istruzioni riportate nell'elenco seguente è vera:

  • È necessario fare riferimento a un database il cui progetto non è nella soluzione corrente.

  • È necessario distribuire un singolo progetto senza distribuire i progetti da cui dipende.

  • Si fa riferimento a uno schema del database che probabilmente non cambierà. In questo scenario è possibile archiviare il file schema di database con estensione dbschema nel controllo della versione.

Per informazioni più dettagliate, vedere Utilizzo di riferimenti in progetti di database.

Attività comuni

Attività comuni

Contenuto di supporto

Ulteriori informazioni sui progetti di database: è possibile apprendere i concetti di base relativi alla gestione delle modifiche apportate agli schemi tramite progetti di database.

Fare pratica: è possibile eseguire una procedura dettagliata introduttiva per acquisire familiarità con la creazione di un ambiente di sviluppo isolato in cui è possibile gestire le modifiche a un database che fa riferimento ad altri database.

Creare un file con estensione dbschema per un database a cui si fa riferimento: creando un file con estensione dbschema, è possibile fare riferimento a un database anche se non è stato creato un relativo progetto di database. Ad esempio, potrebbe essere necessario fare riferimento a un database non in sviluppo. Se si importa lo schema per tale database al prompt dei comandi, creare un file con estensione dbschema a cui è possibile fare riferimento nel progetto di database.

Inserire uno schema di database esistente nel controllo della versione: è possibile creare un progetto, configurare le impostazioni del progetto e importare uno schema tramite la Creazione guidata progetto di database. È inoltre possibile creare un progetto vuoto se si desidera importare lo schema in un secondo momento o se non si dispone delle autorizzazioni necessarie per accedere al database da cui importare lo schema.

È quindi necessario creare variabili per specificare altri database e server a cui gli oggetti nel database fanno riferimento. Dopo aver creato tali variabili, è necessario utilizzarle quando si dichiarano i riferimenti nelle proprietà per il progetto. È inoltre possibile aggiornare le definizioni di oggetti per utilizzare le variabili anziché i riferimenti espliciti. Utilizzando le variabili, è possibile specificare database diversi in base ai diversi ambienti a cui si distribuisce il database. Ad esempio, è possibile sostituire automaticamente le variabili con valori specifici per ambienti di produzione, gestione temporanea, test e sviluppo. Dopo avere dichiarato i riferimenti tra database, è possibile aggiungere il progetto di database al controllo della versione.

Scenari correlati

Avvio dello sviluppo in team di database

Avvio dello sviluppo in team di database che fanno riferimento a oggetti server condivisi

Avvio dello sviluppo in team di database che fanno riferimento a oggetti SQLCLR