DB(MS, Oracle, PG, MY..etc)

mssql 제약조건(constraint)때문에 테이블 변경(alter table, column)이 안될 때

nwairr 2012. 5. 3. 12:17
반응형




































테이블의 컬럼 속성을 변경하고자 할 때


제약조건 때문에 변경이 되지 않을 경우가 있다.


이럴 경우에는


제약조건을 drop 시키고 다시 add를 해 줘야 하는데


필요한 구문은 다음과 같다.


-- 제약조건 drop

alter table [테이블 명] drop constraint [제약조건 명]


-- 테이블 컬럼 속성 변경

alter table [테이블 명] alter column [컬럼 명] [컬럼 속성]


-- 새로운 제약조건 추가

alter table [테이블 명] add constraint [제약조건 명] [제약조건 속성(ex default '')] for [컬럼 명]


아쉽지만 한 번에 alter table alter column alter constraint 를 할 수는 없는 것 같다.


update는 결국 delete와 insert를 실행하는 것으로 생각하면 될 것같다.



참고로


제약조건 및 컬럼 속성을 보려면


sp_help [테이블 명]


을 하면 테이블에 대한 정보를 볼 수가 있다.










반응형