Partager via


Créer des contraintes uniques

Vous pouvez créer une contrainte unique dans SQL Server 2014 à l’aide de SQL Server Management Studio ou de Transact-SQL pour vous assurer qu’aucune valeur en double n’est entrée dans des colonnes spécifiques qui ne participent pas à une clé primaire. La création d'une contrainte unique crée automatiquement un index unique correspondant.

Dans cette rubrique

Avant de commencer

Sécurité

Autorisations

Nécessite l’autorisation ALTER sur la table.

Utilisation de SQL Server Management Studio

Pour créer une contrainte unique

  1. Dans l’Explorateur d’objets, cliquez avec le bouton droit sur la table à laquelle vous souhaitez ajouter une contrainte unique, puis cliquez sur Création.

  2. Dans le menu Concepteur de tables , cliquez sur Index/Clés.

  3. Dans la boîte de dialogue Index/Clés , cliquez sur Ajouter.

  4. Dans la grille sous Général, cliquez sur Type et choisissez Clé unique dans la zone de liste déroulante à droite de la propriété.

  5. Dans le menu Fichier, cliquez sur Enregistrernom de la table.

Utilisation de Transact-SQL

Pour créer une contrainte unique

  1. Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter. L'exemple crée la table TransactionHistoryArchive4 et une contrainte unique sur la colonne TransactionID.

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

Pour créer une contrainte unique sur une table existante

  1. Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter. L'exemple crée une contrainte unique sur les colonnes PasswordHash et PasswordSalt dans la table Person.Password.

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

Pour créer une contrainte unique dans une nouvelle table

  1. Dans l' Explorateur d'objets, connectez-vous à une instance du Moteur de base de données.

  2. Dans la barre d'outils standard, cliquez sur Nouvelle requête.

  3. Copiez et collez l'exemple suivant dans la fenêtre de requête, puis cliquez sur Exécuter. L'exemple crée une table et définit une contrainte unique sur la colonne TransactionID.

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

    Pour plus d’informations, consultez ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL) et table_constraint (Transact-SQL).