Share via


방법: 고유 인덱스 만들기(Visual Database Tools)

Microsoft SQL Server에서 employee id 같은 고유 열이나 author + title 같이 각 레코드를 고유하게 식별하는 열 집합에 대해 고유 인덱스를 만들 수 있습니다.

예를 들어 기본 키가 emp_id인 employee 테이블에서 주민 등록 번호(ssn) 열을 자주 쿼리해야 하는 경우 ssn에 대한 고유 인덱스를 만들어 주민 등록 번호가 중복되지 않도록 할 수 있습니다. 두 명 이상의 직원에 대해 동일한 주민 등록 번호를 입력하면 데이터베이스에서 오류가 발생하고 테이블을 저장할 수 없게 됩니다.

고유 인덱스를 만들거나 수정할 때 중복 키를 무시하도록 옵션을 설정할 수 있습니다. 이 옵션을 로 설정하고 INSERT 문을 사용하여 여러 행에 적용되는 데이터 추가 작업을 수행하여 중복 키를 만들려고 하면 중복 키가 포함된 행이 추가되지 않습니다. 이 옵션을 아니요로 설정하면 삽입 작업이 모두 실패하고 데이터 전체가 롤백됩니다.

고유 인덱스를 만들려면

  1. 개체 탐색기에서 테이블을 마우스 오른쪽 단추로 클릭한 다음 디자인을 클릭합니다.

    테이블 디자이너에서 테이블이 열립니다.

  2. 테이블 디자이너 메뉴에서 인덱스/키를 클릭합니다.

  3. 추가를 클릭합니다. 자동으로 지정된 새 인덱스 이름이 선택한 Primary/Unique 키 및 인덱스 목록에 표시됩니다.

  4. 표에서 형식을 클릭합니다.

  5. 속성 오른쪽에 있는 드롭다운 목록에서 인덱스를 선택합니다.

  6. 에서 인덱싱하려는 열을 선택합니다. 최대 16개의 열을 선택할 수 있습니다. 최상의 성능을 얻으려면 인덱스별로 열을 한두 개만 선택하는 것이 좋습니다. 선택한 각 열에 대해 해당 열의 인덱스 값을 오름차순으로 정렬할지 내림차순으로 정렬할지 지정합니다.

  7. 표에서 고유를 클릭합니다.

  8. 속성 오른쪽에 있는 드롭다운 목록에서 를 선택합니다.

  9. INSERT 문을 사용하여 고유 인덱스에 중복 키를 만드는 데이터를 무시하려면 중복 키 무시 옵션을 선택하고 를 선택합니다.

테이블이나 다이어그램을 저장하면 데이터베이스에 인덱스가 작성됩니다.

[!참고]

두 개 이상의 행에 NULL이 포함된 열이 있으면 단일 열에 대한 고유 인덱스를 만들 수 없습니다. 마찬가지로, 두 개 이상의 행에 NULL이 포함된 열 조합이 있으면 여러 열에 대한 고유 인덱스를 만들 수 없습니다. 이러한 경우는 인덱싱과 관련하여 중복 값으로 취급됩니다.