[MSSQL with SSMS] 상에서 [테이블을 다시 만들어야 하는 변경 내용 저장 사용 한 함] 옵션의 작동원리 혹은 확인하는 법


MSSQL 2014 DB 상에서 이미 만들어진 테이블에서 중요한 변화를 줄 때, 다음과 같은 경고메세지와 같이 행위가 제한되는 경우가 많이 있습니다.

변경 내용을 저장할 수 없습니다. 변경 내용을 적용하려면 다음 테이블을 삭제하고 다시 만들어야 합니다. 다시 만들 수 없는 테이블을 변경했거나 [테이블을 다시 만들어야 하는 변경 내용 저장 사용 한 함] 옵션을 설정했습니다.

이 문제를 해결하기 위해서는, 도구 -> 옵션 -> 디자이너 -> 테이블 및 데이터베이스 디자이너 -> [테이블을 다시 만들어야 하는 변경 내용 저장 안 함] 옵션을 체크해제 해 주면 되는 것으로 알고 있습니다.

방법은 아는데, 이 행위가 무엇을 뜻하는 것인지는 모르겠습니다.

테이블 내용을 전부 다 제 컴퓨터에 복사한 뒤, 테이블을 드랍하고 해당 부분을 수정한 테이블을 다시 올리는 것인지, 아니면 DB서버 상에서 새로운 tmp테이블을 만들고, 그 테이블에 수정한 것으로 내용을 복사해서 채워넣은 뒤, tmp테이블의 이름을 바꾸는 것인지 등, 이것의 작동 원리를 알아야 무언가 사고를 치지 않고 수정할 수 있을 것 같습니다.

그리고 왜 이런 제한이 디폴트로 필요한 것인지도 혹 아시면 같이 설명 부탁드립니다. (그러니까.... 기술적으로 극복 가능한데 왜 디폴트 옵션으로 번거롭게 못 하게 막아놨을까 하는 이유)

  • 2017년 10월 30일에 작성됨

조회수 99


로그인이 필요한 기능입니다.

Hashcode는 개발자들을 위한 무료 QnA사이트 입니다. 작성한 답변에 다른 개발자들이 댓글을 작성하거나 좋아요/싫어요를 할 수 있기 때문에 계정을 필요로 합니다.
► 로그인
► 계정만들기
Close