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

2020-09-23 (수) 13:03:40 1,886

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

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

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

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

|

답변 3개 / 댓글 2개

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

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

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

2020-09-23 (수) 13:12:27

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

답변에 대한 댓글 2개

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

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

시간은 알수없으나...

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

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

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

답변을 작성하려면 로그인이 필요합니다.