Erstellen von Unique-EinschränkungenCreate Unique Constraints

Anwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) und höher JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceAnwendungsbereich:Applies to: JaSQL Server 2016 (13.x)SQL Server 2016 (13.x)yesSQL Server 2016 (13.x)SQL Server 2016 (13.x) and later JaAzure SQL-DatenbankAzure SQL DatabaseYesAzure SQL-DatenbankAzure SQL Database JaVerwaltete Azure SQL-InstanzAzure SQL Managed InstanceYesVerwaltete Azure SQL-InstanzAzure SQL Managed Instance

Sie können mit SQL Server 2019 (15.x)SQL Server 2019 (15.x) oder SQL Server Management StudioSQL Server Management Studio eine UNIQUE-Einschränkung in Transact-SQLTransact-SQL erstellen, um sicherzustellen, dass in bestimmte Spalten, die nicht zum Primärschlüssel gehören, Werte nicht mehrfach eingegeben werden können.You can create a unique constraint in SQL Server 2019 (15.x)SQL Server 2019 (15.x) by using SQL Server Management StudioSQL Server Management Studio or Transact-SQLTransact-SQL to ensure no duplicate values are entered in specific columns that do not participate in a primary key. Durch die Erstellung einer UNIQUE-Einschränkung wird automatisch ein entsprechender eindeutiger Index erstellt.Creating a unique constraint automatically creates a corresponding unique index.

Hinweis

Unter Primärschlüssel, Fremdschlüssel und eindeutiger Schlüssel in SQL Analytics finden Sie weitere Informationen zu UNIQUE-Einschränkungen in Azure Synapse Analytics.See Primary key, foreign key, and unique key in Azure Synapse Analytics for information on unique constraints in Azure Synapse Analytics.

In diesem ThemaIn This Topic

VorbereitungenBefore You Begin

SicherheitSecurity

BerechtigungenPermissions

Erfordert die ALTER-Berechtigung für die Tabelle.Requires ALTER permission on the table.

Verwenden von SQL Server Management StudioUsing SQL Server Management Studio

So erstellen Sie eine UNIQUE-EinschränkungTo create a unique constraint

  1. Klicken Sie im Objekt-Explorermit der rechten Maustaste auf die Tabelle, der Sie eine UNIQUE-Einschränkung hinzufügen möchten, und klicken Sie auf Entwerfen.In Object Explorer, right-click the table to which you want to add a unique constraint, and click Design.

  2. Klicken Sie im Menü Tabellen-Designer auf Indizes/Schlüssel.On the Table Designer menu, click Indexes/Keys.

  3. Klicken Sie im Dialogfeld Indizes/Schlüssel auf Hinzufügen.In the Indexes/Keys dialog box, click Add.

  4. Klicken Sie im Raster unter Allgemein auf Typ, und wählen Sie im Dropdown-Listenfeld rechts neben der Eigenschaft den Eintrag Eindeutiger Schlüssel aus. Klicken Sie danach auf Schließen.In the grid under General, click Type and choose Unique Key from the drop-down list box to the right of the property, and then click Close.

  5. Klicken Sie im Menü Datei auf Tabellenname speichern.On the File menu, click Save table name.

Verwenden von Transact-SQLUsing Transact-SQL

So erstellen Sie eine UNIQUE-EinschränkungTo create a unique constraint

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-EngineDatabase Engine-Instanz her.In Object Explorer, connect to an instance of Datenbank-EngineDatabase Engine.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.On the Standard bar, click New Query.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.Copy and paste the following example into the query window and click Execute. Im Beispiel wird die Tabelle TransactionHistoryArchive4 angelegt und eine UNIQUE-Einschränkung für die Spalte TransactionIDerstellt.The example creates the table TransactionHistoryArchive4 and creates a unique constraint on the column TransactionID.

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

So erstellen Sie eine UNIQUE-Einschränkung für eine vorhandene TabelleTo create a unique constraint on an existing table

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-EngineDatabase Engine-Instanz her.In Object Explorer, connect to an instance of Datenbank-EngineDatabase Engine.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.On the Standard bar, click New Query.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.Copy and paste the following example into the query window and click Execute. Im Beispiel werden eine UNIQUE-Einschränkung für die Spalten PasswordHash und PasswordSalt in der Tabelle Person.Passworderstellt.The example creates a unique constraint on the columns PasswordHash and PasswordSalt in the table Person.Password.

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

So erstellen Sie eine UNIQUE-Einschränkung in einer neuen TabelleTo create a unique constraint on a new table

  1. Stellen Sie im Objekt-Explorer eine Verbindung mit einer Datenbank-EngineDatabase Engine-Instanz her.In Object Explorer, connect to an instance of Datenbank-EngineDatabase Engine.

  2. Klicken Sie in der Standardleiste auf Neue Abfrage.On the Standard bar, click New Query.

  3. Kopieren Sie das folgende Beispiel, fügen Sie es in das Abfragefenster ein, und klicken Sie auf Ausführen.Copy and paste the following example into the query window and click Execute. Im Beispiel wird eine Tabelle erstellt und dann wird eine UNIQUE-Einschränkung für die Spalte TransactionIDdefiniert.The example creates a table and defines a unique constraint on the column TransactionID.

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

    Weitere Informationen finden Sie unter ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL) und table_constraint (Transact-SQL).For more information, see ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL), and table_constraint (Transact-SQL).