bcp 형식의 파일에서 호스트 파일 열 건너 뛰기

bcp bulk sqlbulkcopy sybase sybase-ase

문제

나는 이런 식으로 CSV texte 파일을 가지고있다 :

SicID;PorID;FarId;Company;DecadeId;SocName;FarName
A1;A2;A3;A4;A5;A6;A7
B1;B2;B3;B4;B5;B6;B7
C1;C2;C3;C4;C5;C6;C7

Bcp Sybase를 사용하여 my_table에서이 파일을 가져오고 SicID, PorID 및 SocName 만 가져 오려고합니다. 그래서이 bcp 형식의 파일을 사용합니다.

10.0
8
1   SYBCHAR 0   2   ";" 1   SicId
2   SYBCHAR 0   2   ";" 2   PorId
3   SYBCHAR 0   0   ""  0   FundId
4   SYBCHAR 0   0   ""  0   Company
5   SYBCHAR 0   0   ""  0   DomicileId
6   SYBCHAR 0   2   ";" 3   SocName
7   SYBCHAR 0   0   ""  0   FundName
8   SYBCHAR 0   10  "\r\n" 0    end

불행히도 가져올 때 my_table 좋은 데이터가 없습니다. 텍스트 파일의 3,4,5 호스트 열을 건너 뛰지 않고 my_table을 이해하기 어려운 의미로 다른 열로 채 웁니다.

내 테이블을 채우기 위해 호스트 열을 건너 뛰는 솔루션이 있습니까?

My_table

SicID;PorID;SocName
A1;A2;A6
B1;B2;B6
C1;C2;C6

인기 답변

당신이 가지고있는 문제는 생략하고 싶은 칼럼에 터미네이터 문자가 없다는 것입니다. 다음 이미지를 확인하십시오 ( 여기 에서 알 수 있습니다 ) :

여기에 이미지 설명을 입력하십시오.

기본적으로 소스 파일에 들어오는 열을 생략하려면 다음과 같이하십시오.

  1. 서버 열 순서 = 0으로 사용
  2. 종결자를 지정해야합니다!
  3. 소스 파일의 길이 또한 중요합니다.
  4. 서버 열 이름은 정보 용입니다.

예를 들어 질문에 제공 한 샘플 데이터를 사용하면 .fmt 파일은 다음과 같아야합니다.

10.0
8
1   SYBCHAR 0   2   ";"    1   SicId
2   SYBCHAR 0   2   ";"    2   PorId
3   SYBCHAR 0   2   ";"    0   FarId
4   SYBCHAR 0   2   ";"    0   Company
5   SYBCHAR 0   2   ";"    0   DecadeId
6   SYBCHAR 0   2   ";"    3   SocName
7   SYBCHAR 0   2   ";"    0   FarName
8   SYBCHAR 0   10  "\r\n" 0   end


아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.
아래 라이선스: CC-BY-SA with attribution
와 제휴하지 않음 Stack Overflow
이 KB는 합법적입니까? 예, 이유를 알아보십시오.