기본 키 만들기
적용 대상: SQL Server 2016(13.x) 이상 Azure SQL 데이터베이스 Azure SQL Managed Instance
SQL Server에서는 SQL Server Management Studio 또는 Transact-SQL을 사용하여 기본 키를 삭제할 수 있습니다.
기본 키를 삭제하면 해당 인덱스가 삭제됩니다. 이는 테이블이 힙이 되게 하는 테이블의 클러스터형 인덱스일 수 있습니다. 자세한 내용은 힙(클러스터형 인덱스가 없는 테이블)을 참조하세요. 대부분의 테이블에는 클러스터형 인덱스가 있어야 합니다. 기본 키를 다시 만들려면 기본 키 만들기를 참조하세요.
기본 키는 다른 테이블의 외래 키에서 참조할 수 있습니다. 외래 키에서 참조하는 경우 먼저 참조하는 외래 키를 삭제한 다음, 기본 키를 삭제해야 합니다. 자세한 내용은 기본 키 및 외래 키 제약 조건을 참조하세요.
사용 권한
테이블에 대한 ALTER 사용 권한이 필요합니다.
SQL Server Management Studio 사용
개체 탐색기를 사용하여 기본 키 제약 조건 삭제
개체 탐색기에서 기본 키가 포함된 테이블을 확장한 후 키를 확장합니다.
키를 마우스 오른쪽 단추로 클릭하고 삭제를 선택합니다.
개체 삭제 대화 상자에서 올바른 키가 지정되었는지 확인하고 확인을 선택합니다.
테이블 디자이너를 사용하여 기본 키 제약 조건 삭제
개체 탐색기에서 기본 키가 있는 테이블을 마우스 오른쪽 단추로 클릭하고 디자인을 선택합니다.
테이블 표에서 기본 키가 있는 행을 마우스 오른쪽 단추로 클릭하고 기본 키 제거 를 선택하여 기본 키 설정 또는 해제 여부를 전환할 수 있습니다.
참고
이 작업을 실행 취소하려면 변경 내용을 저장하지 않고 테이블을 닫습니다. 기본 키를 삭제하는 작업은 테이블에 대한 다른 모든 변경 내용을 손실하지 않고 실행 취소할 수 없습니다.
파일 메뉴에서 ‘테이블 이름’ 저장을 선택합니다.
Transact-SQL 사용
기본 키 제약 조건 삭제
개체 탐색기에서 데이터베이스 엔진인스턴스에 연결합니다.
표준 도구 모음에서 새 쿼리를 선택합니다.
다음 예시를 복사하여 쿼리 창에 붙여넣고 실행을 선택합니다. 다음 예제에서는 먼저 기본 키 제약 조건의 이름을 식별한 다음, 해당 제약 조건을 삭제합니다.
USE AdventureWorks2022; GO -- Return the name of primary key. SELECT name FROM sys.key_constraints WHERE type = 'PK' AND OBJECT_NAME(parent_object_id) = N'TransactionHistoryArchive'; GO -- Delete the primary key constraint. ALTER TABLE Production.TransactionHistoryArchive DROP CONSTRAINT PK_TransactionHistoryArchive_TransactionID; GO