2017-12-04 6 views
0

SQL 테이블에로드 할 Excel 데이터가 매우 큽니다. 작은 데이터의 경우 작동합니다. 그러나 대용량 데이터 (2,000 만 개가 넘는 레코드)의 경우 다음 오류가 발생합니다.Excel 파일을 CSV로 변환 한 다음 SSIS를 사용하여 SQL 테이블에로드

Excel to CSV : There were errors during task validation. Excel to CSV Error: "Excel Source" failed validation and returned validation status and returned validation status "VS_ISBROKEN". Excel to CSV: opening a rowset for "Table1$" failed. check that the object exists in the database. Excel to CSV:Error : SSIS Error code DTS_E_OLEDBERROR. An OLE DB error has occurred .Error code 0x80004005.

+0

을로드 한 다음 SQL 작업 단계에서 32 비트를 설정하려고합니다. – plaidDK

+0

내가 항상 묻는 질문은 : 엑셀 파일은 어디에서 왔는가? 번거 로움을 덜어주기 위해 탭으로 구분하여 생성 할 수 있습니까? –

답변

1

내 패키지에는 아무런 문제가 없습니다. 문제는 Excel 파일에 있습니다. 작은 데이터의 경우 .xlsx 확장이 작동합니다 (2007 년 우수). 큰 데이터의 경우 Excel 97 버전 (.xls)으로 데이터를 변환해야합니다. 그렇게하면 입찰가로 manullay를 실행할 수있는 경우 데이터

+0

귀하가이 답변을 수락 한 것으로 표시해야합니다 – Hadi

0

일반적으로이 오류가 발생하면 대상 테이블에 문제가 있습니다. 테이블의 존재를 확인하고 소스와 대상 사이의 필드도 일치하는지 확인하십시오.

+0

패키지를 로컬에서 실행할 때 작동하지만 서버에서는 그렇지 않습니다. – MJ8

+0

프로젝트를 재구성하고 다시 배포하십시오. 패키지/프로젝트의 연결과 서버의 매개 변수/구성을 확인하십시오. 소스에 문제가있는 것 같습니다. 따라서 Excel의 탭 이름을 확인하십시오. 어쩌면 Excel 파일보다 원본 파일 소스에 CSV를 사용하는 것이 좋습니다. – Proffesore

+0

내 데이터 흐름에 모든 것이 일치합니다. 나는 소스와 목적지의 데이터 유형을 점검하기까지했다. – MJ8