표준 SSIS 방식을 사용하여 대형 세트 (수십만)의 CSV 파일을 단일 스테이징 SQL 서버 테이블에로드합니다.SSIS : CSV 소스에 존재하지 않는 열을 추가하십시오.
대부분의 소스 CSV 파일에는 동일한 열 구조 (순서, 열 집합, 데이터 형식)가 있습니다. 함께 약 140 열이 있습니다.
그러나 특정 (< 1 %)의 경우 원본 파일의 일부 열이 부족합니다 (정확히 어떤 열인지 알고 있으며 누락 된 열의 가능한 조합은 세 가지가 있음). 이는 의도적으로 설계된 것으로, 즉 유효한 비즈니스 시나리오 (meh)입니다.
원본 CSV 연결에 해당 열이 실제 원본 CSV 파일에 없으면 "가상"열 (NULL 값/빈 값/공백 값으로 채워짐)을 어떻게 만들 수 있습니까?
나는 C# 스크립팅 구성 요소로 CSV 헤더를 읽고 여러 소스 연결을 만들고 특정 열의 존재 (또는 부족)를 기반으로 올바른 데이터 흐름으로 리디렉션 할 수 있지만 더 나은 "우아한 "솔루션은 소스 파일에 누락 된 빈 열을"인위적으로 "추가 할 수있는"단일 "CSV 데이터 소스만으로"스마트 "합니다. 편의상
는의 전체 열 집합이 있다고 가정하자 :
ID;C1;C2;C3
그리고 C3 때때로 일부 CSV 파일이 즉 누락되었음을 :
ID;C1;C2
어떤 힌트를 환영합니다.
스크립트 구성 요소를 데이터 소스로 만들지는 않았지만 합법적으로 보입니다. 항상 첫 번째 시간이 있습니다. 한번 시도해 보겠습니다. 고맙습니다. –