Condividi tramite


Creare vincoli univoci

È possibile creare un vincolo univoco in SQL Server 2014 usando SQL Server Management Studio o Transact-SQL per assicurarsi che non vengano immessi valori duplicati in colonne specifiche che non partecipano a una chiave primaria. La creazione automatica di un vincolo univoco crea un indice univoco corrispondente.

Contenuto dell'articolo

Prima di iniziare

Sicurezza

Autorizzazioni

È necessario disporre dell'autorizzazione ALTER per la tabella.

Uso di SQL Server Management Studio

Per creare un vincolo univoco

  1. In Esplora oggettifare clic con il pulsante destro del mouse sulla tabella nella quale aggiungere un vincolo univoco e scegliere Progetta.

  2. Scegliere Indici/chiavi nel menu Progettazione tabelle.

  3. Nella finestra di dialogo Indici/chiavi fare clic su Aggiungi.

  4. Nella griglia in Generalefare clic su Tipo e selezionare Chiave univoca dall'elenco a discesa a destra della proprietà.

  5. Nel menu File fare clic su Salvanome tabella.

Uso di Transact-SQL

Per creare un vincolo univoco

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Nell'esempio viene creata la tabella TransactionHistoryArchive4 e un vincolo univoco sulla colonna TransactionID.

    USE AdventureWorks2012;  
    GO  
    CREATE TABLE Production.TransactionHistoryArchive4  
     (  
       TransactionID int NOT NULL,   
       CONSTRAINT AK_TransactionID UNIQUE(TransactionID)   
    );   
    GO  
    
    

Per creare un vincolo univoco in una tabella esistente

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Nell'esempio viene creato un vincolo univoco nelle colonne PasswordHash e PasswordSalt della tabella Person.Password.

    USE AdventureWorks2012;   
    GO  
    ALTER TABLE Person.Password   
    ADD CONSTRAINT AK_Password UNIQUE (PasswordHash, PasswordSalt);   
    GO  
    
    

Per creare un vincolo univoco in una nuova tabella

  1. In Esplora oggetti connettersi a un'istanza del motore di database.

  2. Sulla barra Standard fare clic su Nuova query.

  3. Copiare e incollare l'esempio seguente nella finestra Query, quindi fare clic su Esegui. Nell'esempio viene creata una tabella e definito un vincolo univoco nelle colonne TransactionID.

    USE AdventureWorks2012;  
    GO  
    CREATE TABLE Production.TransactionHistoryArchive2  
    (  
       TransactionID int NOT NULL,  
       CONSTRAINT AK_TransactionID UNIQUE(TransactionID)  
    );  
    GO  
    
    

    Per altre informazioni, vedere ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL) e table_constraint (Transact-SQL).