UNIQUE 제약 조건 만들기Create Unique Constraints

이 항목은 다음에 적용됩니다. 예SQL Server(2016부터)예Azure SQL Database아니요Azure SQL Data Warehouse아니요병렬 데이터 웨어하우스 THIS TOPIC APPLIES TO: yesSQL Server (starting with 2016)yesAzure SQL DatabasenoAzure SQL Data Warehouse noParallel Data Warehouse

SQL Server 2017SQL Server 2017 에서 SQL Server Management StudioSQL Server Management Studio 또는 Transact-SQLTransact-SQL 을 사용하여 UNIQUE 제약 조건을 만들어서 기본 키에 참여하지 않는 특정 열에 입력하는 값이 중복되지 않도록 할 수 있습니다.You can create a unique constraint in SQL Server 2017SQL Server 2017 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. UNIQUE 제약 조건을 만들면 해당하는 고유 인덱스가 자동으로 만들어집니다.Creating a unique constraint automatically creates a corresponding unique index.

항목 내용In This Topic

시작하기 전 주의 사항 Before You Begin

보안 Security

사용 권한 Permissions

테이블에 대한 ALTER 사용 권한이 필요합니다.Requires ALTER permission on the table.

SQL Server Management Studio 사용 Using SQL Server Management Studio

UNIQUE 제약 조건을 만들려면To create a unique constraint

  1. 개체 탐색기에서 UNIQUE 제약 조건을 추가하려는 테이블을 마우스 오른쪽 단추로 클릭하고 디자인을 선택합니다.In Object Explorer, right-click the table to which you want to add a unique constraint, and click Design.

  2. 테이블 디자이너 메뉴에서 인덱스/키를 클릭합니다.On the Table Designer menu, click Indexes/Keys.

  3. 인덱스/키 대화 상자에서 추가를 클릭합니다.In the Indexes/Keys dialog box, click Add.

  4. 일반아래의 표에서 형식 을 선택하고 속성 오른쪽에 있는 드롭다운 목록 상자에서 고유 키 를 선택합니다.In the grid under General, click Type and choose Unique Key from the drop-down list box to the right of the property.

  5. 파일 메뉴에서 저장table name을 클릭합니다.On the File menu, click Savetable name.

Transact-SQL 사용 Using Transact-SQL

UNIQUE 제약 조건을 만들려면To create a unique constraint

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 TransactionHistoryArchive4 테이블을 만들고 TransactionID열에 UNIQUE 제약 조건을 만듭니다.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  
    

기존 테이블에 UNIQUE 제약 조건을 만들려면To create a unique constraint on an existing table

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 PasswordHash 테이블에서 PasswordSaltPerson.Password열에 UNIQUE 제약 조건을 만듭니다.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  
    

새 테이블에 UNIQUE 제약 조건을 만들려면To create a unique constraint in an new table

  1. 개체 탐색기에서 데이터베이스 엔진Database Engine인스턴스에 연결합니다.In Object Explorer, connect to an instance of 데이터베이스 엔진Database Engine.

  2. 표준 도구 모음에서 새 쿼리를 클릭합니다.On the Standard bar, click New Query.

  3. 다음 예를 복사하여 쿼리 창에 붙여 넣고 실행을 클릭합니다.Copy and paste the following example into the query window and click Execute. 이 예에서는 테이블을 만들고 TransactionID 열에 UNIQUE 제약 조건을 정의합니다.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  
    

    자세한 내용은 ALTER TABLE(Transact-SQL), CREATE TABLE(Transact-SQL)table_constraint(Transact-SQL)를 참조하세요.For more information, see ALTER TABLE (Transact-SQL), CREATE TABLE (Transact-SQL), and table_constraint (Transact-SQL).