Condividi tramite


Procedura: creare indici univoci

Aggiornamento: novembre 2007

In SQL Server è possibile creare un indice univoco in una colonna univoca, ad esempio employee id, o in un gruppo di colonne che identificano in modo univoco ogni record, ad esempio author + title.

Se, ad esempio, si prevede di eseguire spesso query sulla colonna dei numeri di previdenza sociale (ssn) nella tabella employee (in cui la chiave primaria è emp_id) e si desidera assicurarsi che i numeri di previdenza sociale siano univoci, creare un indice univoco in ssn. Se viene immesso lo stesso numero di previdenza sociale per più dipendenti, verrà visualizzato un messaggio di errore e non sarà possibile salvare la tabella. Per ulteriori informazioni sugli indici univoci, vedere "Linee guida per la progettazione di indici univoci" sul sito Web Microsoft.

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 tenta di creare chiavi duplicate aggiungendo dati che interessano più righe (con l'istruzione INSERT), la riga che contiene un duplicato 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.

Nota:

Le finestre di dialogo e i comandi di menu visualizzati possono differire da quelli descritti nella Guida a seconda delle impostazioni attive o dell'edizione in uso. Per modificare le impostazioni, scegliere Importa/Esporta impostazioni dal menu Strumenti. Per ulteriori informazioni, vedere Impostazioni di Visual Studio.

Per creare un indice univoco

  1. In Esplora server selezionare la tabella di database che si desidera aprire.

  2. Scegliere Apri definizione tabella dal menu Database.

    La tabella verrà visualizzata in Progettazione tabelle.

  3. Scegliere Indici/chiavi dal menu Progettazione tabelle.

  4. Fare clic su Aggiungi. Nell'elenco Indice o chiave primari/univoci selezionati verrà visualizzato il nome assegnato automaticamente dal sistema al nuovo indice.

  5. Nella griglia fare clic su Tipo.

  6. Selezionare Indice dall'elenco a discesa a destra della proprietà.

  7. 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.

  8. Nella griglia fare clic su Univoco.

  9. Selezionare Sì dall'elenco a discesa a destra della proprietà.

  10. Selezionare l'opzione Ignora chiave duplicata per ignorare i dati nuovi o aggiornati che comportano la creazione di una voce duplicata nell'indice (con l'istruzione INSERT o UPDATE).

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.

Nota:

Non tutti i database utilizzano gli indici allo stesso modo. Per ulteriori informazioni, vedere la documentazione relativa al database.

Vedere anche

Riferimenti

Finestra di dialogo Indici/chiavi

Altre risorse

Operazioni con gli indici

Operazioni con le chiavi