MSSQL

[MSSQL] 테이블 TABLE PK(기본키) 변경 방법

허니용 2024. 7. 20. 22:54
728x90
반응형

 

MSSQL PK(기본키) 변경 방법

TestTable 테이블의 현재 PK(기본키)는 Column1으로 되어 있는데요.

Column1의 PK를 Column2로 변경하는 방법을 알아보도록 하겠습니다.

 

 

/* 1. PK 삭제 */
ALTER  TABLE  dbo.TestTable  DROP  CONSTRAINT  pk_TestTable
ALTER  TABLE  [테이블명]      DROP  CONSTRAINT  [제약조건명]


/* 2. PK로 추가할 컬럼에 NOT NULL 속성 추가 */
ALTER  TABLE  dbo.TestTable  ALTER COLUMN Column2  VARCHAR(100) NOT NULL


/* 3. PK 재생성*/
ALTER  TABLE  dbo.TestTable  ADD  CONSTRAINT  pk_TestTable  PRIMARY KEY  (TableName, TableID)
ALTER  TABLE  [테이블명]     ADD  CONSTRAINT  [제약조건명]  PRIMARY KEY (컬럼명1, 컬럼명2, ...)

 

PK를 재생성하기 위해서는 위 순서대로 작업을 진행해야 합니다.

제약조건명은 쿼리창에서 테이블을 더블 클릭하고 Alt+F1 키를 누르면 확인 가능합니다.

※ 제약조건명 = constraint_name

 

 

Column2 칼럼을 PK로 재생성할 건데 위처럼 중복되는 데이터가 있으면 처리가 되지 않습니다.

PK를 재생성 하기 전에 위 데이터를 중복되지 않게 변경해 주거나 행을 삭제 처리해야 합니다.

 

 

이상 마칩니다.

감사합니다.

 

728x90
반응형