Problemi legati all'evoluzione del database (Visual Database Tools)Issues of Database Evolution (Visual Database Tools)

Quando si modifica la struttura di un database distribuito, è necessario assicurarsi che tale modifica sia compatibile con i dati e la struttura del database esistenti.If you change the structure of a deployed database, you must take special care that your alteration is compatible with the existing data and database structure. Le seguenti modifiche potrebbero richiedere l'esecuzione di operazioni specifiche:You might need to take special steps when you make the following modifications:

  • Aggiunta di un vincolo Se si aggiunge un vincolo, il database potrebbe già contenere dati che non lo rispettano.Adding a Constraint If you add a constraint, the database might already contain data that does not satisfy it. Quando si tenta di salvare il nuovo vincolo, nella casella di dialogo Notifiche postsalvataggio (Visual Database Tools) l'utente verrà avvertito che non è stato possibile creare il vincolo tramite il server del database.When you try to save the new constraint, the Post-Save Notifications Dialog Box (Visual Database Tools) informs you that the database server could not create the constraint. Per forzare l'accettazione del nuovo vincolo da parte del database, deselezionare la casella di controllo Verifica dati esistenti durante la creazione.To force the database to accept the new constraint, you can clear the Check existing data on creation check box.

  • Aggiunta di una relazione Se si aggiunge una relazione, il database potrebbe già contenere righe della tabella chiave esterna che non hanno righe corrispondenti nella tabella chiave primaria.Adding a Relationship If you add a relationship, the database might already contain rows of the foreign-key table that do not have corresponding rows in the primary-key table. I dati esistenti potrebbero pertanto non soddisfare l'integrità referenziale.That is, the existing data might not satisfy referential integrity. Quando si tenta di salvare la nuova relazione, nella casella di dialogo Notifiche postsalvataggio (Visual Database Tools) l'utente verrà avvertito che non è stato possibile salvare la tabella chiave esterna modificata tramite il server del database.When you try to save the new relationship, thePost-Save Notifications Dialog Box (Visual Database Tools) informs you that the database server could not save the revised foreign-key table. Per forzare l'accettazione della modifica da parte del database, deselezionare la casella di controllo Verifica dati esistenti durante la creazione.To force the database to accept the modification, you can clear the Check existing data on creation check box.

  • Modifica di una tabella che contribuisce a una vista indicizzata Se si modifica una tabella che contribuisce a una vista indicizzata di Microsoft SQL Server, gli indici della vista andranno persi.Modifying a Table Contributing to an Indexed View If you modify a table that contributes to a Microsoft SQL Server indexed view, the indexes on the view will be lost. Per informazioni sulla creazione degli indici, vedere la documentazione online di SQL Server.See the SQL Server Books Online for information on recreating indexes.

  • Eliminazione di un oggetto Se si elimina un oggetto, ad esempio una colonna, una tabella o una vista, verificare prima che nessun altro oggetto del database vi faccia riferimento.Deleting an Object If you delete an object, such as a column, table, or view, check first to be sure that the object is not referenced by another object in the database.

Indipendentemente dalla modalità in base a cui si modifica la progettazione del database, è consigliabile mantenere una cronologia delle modifiche.No matter how you alter the database design, you should retain a history of the alterations. Una possibile soluzione consiste nel mantenere gli script SQL per tutte le modifiche apportate al database di produzione.One approach is to retain SQL scripts for all modifications that you ever make to your production database.

Vedere ancheSee Also

Utilizzo dei vincoli (Visual Database Tools)Working with Constraints (Visual Database Tools)
Ambienti multiutente (Visual Database Tools)Multiuser Environments (Visual Database Tools)