안녕하세요. 뉴비입니다...
그동안 눈팅만하다 가입하게 되었습니다^^;;
테이블에 문제가 발생했습니다.
데이터가 들어가지 않아서 오류메시지를 확인해보니 아래와 같이 나오네요.
1.오류 0xc0202009: 데이터 흐름 태스크 1: SSIS 오류 코드 DTS_E_OLEDBERROR. OLE DB 오류가 발생했습니다. 오류
코드: 0x80004005.
OLE DB 레코드를 사용할 수 있습니다. 원본: "Microsoft SQL Server Native Client 11.0" Hresult: 0x80004005 설명: "Violation
of PRIMARY KEY constraint '테이블'. Cannot insert duplicate
key in object 'dbo.테이블'.".
2.오류 0xc0209029: 데이터 흐름 태스크 1: SSIS 오류 코드
DTS_E_INDUCEDTRANSFORMFAILUREONERROR. 오류 코드 0xC020907B이(가) 발생했기 때문에 "대상 - 테이블.입력[Destination
Input]"이(가) 실패했으며 "대상 - 테이블.입력[Destination Input]"에서의 오류 행 처리는 오류 발생 시 실패하도록 지정되어 있습니다. 지정된 구성 요소의 해당 개체에서 오류가 발생했습니다. 오류에 대한
자세한 정보와 함께 이 오류 메시지보다 먼저 게시된 오류 메시지가 있을 수도 있습니다.
3.오류 0xc0047022: 데이터 흐름 태스크 1: SSIS 오류 코드 DTS_E_PROCESSINPUTFAILED. 입력 "Destination Input"(63)을(를) 처리하는 동안 구성 요소 "대상 - 테이블"(50)에서
ProcessInput 메서드가 실패했습니다(오류 코드
0xC0209029). 식별된 구성 요소가 ProcessInput 메서드에서 오류를 반환했습니다. 이 오류는 해당 구성 요소와 관련되어 있지만 데이터 흐름 태스크의 실행을 중지할 수도 있는 오류입니다. 오류에 대한 자세한 정보와 함께 이 오류 메시지보다 먼저 게시된 오류 메시지가 있을 수도 있습니다.
테이블내에서 몇개의 컬럼이 nvarchar 와 varchar 형을 쓰고있습니다.
아무래도 문자열이 많이들어가다보니 8kb 초과하여 행을 추가후 올리려해도 테이블에 들어가지 않는 상황이 생긴 것 같습니다.
문제의 원인이 이것 때문인지는 모르겠지만.. (Row-Overflow Data Exceeding 8 KB)
http://technet.microsoft.com/ko-kr/library/ms186981(v=sql.105).aspx
구글링을 해보니 8060바이트 이상크기가 들어가게 될경우 오버플로우 되면서 페이지 쪽 처리가 바뀌는 것 같습니다...
마소에서도 가급적 이렇게 쓰지 말라고 나오네요...
그렇다고 기존의 테이블을 분리하여 쪼개기도 애매한 상황이라...
어떻게 해야할 지 몰라 선배님들의 조언을 구해봅니다;;;
마지막으로 단지 키값이 잘못 들어갔었을 뿐이었다면...OTL...
Comment 1
-
Jade
2013.10.17 18:43
자문자답: 정말로 인덱스 키 값 중복이었습니다...Violation of PRIMARY KEY constraint 부분을 왜 이제 봤는지....ㅠㅠ;;
덕분에 본의아니게 행 오버플로우 쪽을 보게됬네요;;;;