안녕하세요. db에 alter table 명령 수행중입니다.

안녕하세요. db에 alter table 명령 수행중입니다.

QA

안녕하세요. db에 alter table 명령 수행중입니다.

본문

mssql 약 70만건 정도 있는 회원db에 필드하나를 추가해야하는 상황이에요. 

ALTER TABLE [테이블명] ADD [추가할필드명] tinyint; 명령을 진행하였는데

지금 2시간 반이 지나도록 계속 쿼리 실행중이라서요...ㅠㅠㅠ

이거 시간이 얼마나 소요될지 알 수 있을까요??

이 질문에 댓글 쓰기 :

답변 3

이런 작업은 디비 관리툴에서 테이블복사(구조만복사) 후 필드 추가

테이블 복사(데이터만 복사) 하면 쉽게 됩니다

완료 되면 이전 테이블 삭제하고 복사된 테이블명 변경

시간은 알수없으나...

쿼리가 잘못된건 아니신지요?

아니면 mssql을 sql접속 툴로 접속하셔서

바로 필드를 생성하시는게 편리하실겁니다.

70만건이면 오래 걸립니다.

테이블의 구조에 따라 다르지만 8시간 걸린적도 있어서. ㅠ.ㅠ
이번에는 일을 저질렀으니 어쩔수 없고

다음에는 대량의 테이블은 다음의 과정으로 수행하시면 좀 편하실겁니다.
1. 데이터를 백업 받는다. ( 파일이나 덤프 파일이나 아무거나 )
2. 테이블을 비운다 ( truncate table )
3. 테이블에 컬럼을 바꾼다. ( alter table )
4. 테이블에 데이타 넣기 ( import data )

답변을 작성하시기 전에 로그인 해주세요.
전체 59,574
QA 내용 검색

회원로그인

(주)에스아이알소프트 / 대표:홍석명 / (06211) 서울특별시 강남구 역삼동 707-34 한신인터밸리24 서관 1404호 / E-Mail: admin@sir.kr
사업자등록번호: 217-81-36347 / 통신판매업신고번호:2014-서울강남-02098호 / 개인정보보호책임자:김민섭(minsup@sir.kr)
© SIRSOFT