Procedura: Creazione di indici univoci (Visual Database Tools)
Data aggiornamento: 12 dicembre 2006
In Microsoft SQL Server è possibile creare un indice univoco su una colonna univoca, ad esempio employee id, o su un set di colonne che nel loro insieme identificano in modo univoco ogni record, ad esempio author + title.
Se, ad esempio, si eseguono spesso query sulla colonna del numero di previdenza sociale (ssn
) nella tabella employee
(dove la chiave primaria è emp
_id
) e si desidera assicurarsi che i numeri di previdenza sociale siano univoci, creare un indice univoco su ssn
. Se viene immesso lo stesso numero di previdenza sociale per più dipendenti, verrà visualizzato un messaggio di errore e sarà impossibile salvare la tabella.
Quando si crea o si modifica un indice univoco, è possibile impostare un'opzione che consente di ignorare le chiavi duplicate. Se questa opzione è impostata su Sì e si cerca di creare chiavi duplicate aggiungendo dati che coinvolgono più righe (utilizzando l'istruzione INSERT), la riga che contiene la chiave duplicata non verrà aggiunta. Se invece l'opzione è impostata su No, l'intera operazione avrà esito negativo e verrà eseguito il rollback di tutti i dati.
Per creare un indice univoco
In Esplora oggetti fare clic con il pulsante destro del mouse sulla tabella e scegliere Progetta (Modifica in SP1 o versioni precedenti).
La tabella verrà visualizzata in Progettazione tabelle.
Scegliere Indici/chiavi dal menu Progettazione tabelle.
Fare clic su Aggiungi. Nell'elenco Indice primario/univoco o chiave primaria/univoca selezionato verrà visualizzato il nome assegnato automaticamente dal sistema al nuovo indice.
Nella griglia fare clic su Tipo.
Selezionare Indice dall'elenco a discesa a destra della proprietà.
In Nome colonna selezionare le colonne da indicizzare. È possibile selezionare fino a 16 colonne. Per ottenere prestazioni ottimali, selezionare una o due colonne per indice. Per ogni colonna selezionata, è possibile specificare se nell'indice i valori della colonna dovranno essere organizzati in ordine crescente o decrescente.
Nella griglia fare clic su Univoco.
Selezionare Sì dall'elenco a discesa a destra della proprietà.
Selezionare l'opzione Ignora chiavi duplicate per ignorare i dati che comportano la creazione di una chiave duplicata nell'indice univoco (attraverso l'istruzione INSERT).
Dopo avere salvato la tabella o il diagramma viene creato l'indice nel database.
[!NOTA] Non è possibile creare un indice univoco su un'unica colonna se tale colonna contiene il valore NULL in più righe. Analogamente, non è possibile creare un indice univoco su più colonne se la combinazione di colonne contiene il valore NULL in più righe. Ai fini dell'indicizzazione, tali valori sono considerati duplicati.
Vedere anche
Concetti
Linee guida per la progettazione di indici univoci
Altre risorse
Utilizzo degli indici (Visual Database Tools)
Finestra di dialogo Indici/chiavi (Visual Database Tools)
Utilizzo di chiavi (Visual Database Tools)