본문 바로가기
IT/MSSQL

하나 이상의 개체가 이 열에 액세스하므로 ALTER TABLE DROP COLUMN weight이(가) 실패했습니다. [컬럼 삭제 오류]

by 베베야 2021. 3. 18.
728x90

컬럼을 삭제하려고 하면 아래와 같이 "하나 이상의 개체가 이 열에 액세스 하므로 ALTER TABLE DROP COLUMN weight이(가) 실패했습니다."라는 오류 메시지가 나오면서 삭제가 안 되는 경우가 있습니다. 이런 오류가 발생할 경우 제약조건을 삭제해 줘야 합니다.

MSSQL 컬럼 삭제 시 발생하는 오류 메시지 입니다.
MSSQL 컬럼 삭제 오류

 

 

제약조건 확인

아래의 명령어를 실행해서 테이블의 제약조건을 확인합니다.

--문법
exec sp_help [테이블명]

--예제
exec sp_help bebeya


제약조건을 조회하면 가장 하단에 constraint_name 컬럼에 제약조건 이름이 나옵니다.
컬럼 삭제 전 이 제약조건을 먼저 삭제해야 합니다.

--문법
ALTER TABLE [테이블명] DROP constraint [constraint_name]  

--예제
ALTER TABLE bebeya DROP constraint DF__bebeya__weight__619B8048  

MSSQL 컬럼 삭제 전 삭제 해야할 제약조건을 확인하는 화면입니다.
컬럼 제약조건 확인

 

 

컬럼 삭제 방법

제약 조건 삭제 후 테이블 컬럼 삭제를 진행하시면 오류 없이 삭제가 되는 것을 볼 수 있습니다.

--문법
ALTER TABLE [테이블명] DORP COLUMN [컬럼명]

--예제
ALTER TABLE bebeya DROP COLUMN weight


이상으로 MSSQL 컬럼 삭제 시 발생하는 오류 "하나 이상의 개체가 이 열에 액세스 하므로 ALTER TABLE DROP COLUMN weight이(가) 실패했습니다."
해결 방법에 대해서 알아보았습니다.

반응형
그리드형

댓글