0
.csv 파일에서로드 할 때 Teradata 테이블에 데이터를 빠르게로드하면 특수 문자 앞에 표시되는 문제가 있습니다.Teradata가 특수 문자 앞에 Â을 추가합니다.
CSV 파일
1 | 안녕하세요, £ 5.00 지불 주셔서 감사합니다, 귀하의 계정에서 인출되었습니다. | XXXX | XX | XXXX-XXX-XXX
Teradata 테이블
1 | 안녕하세요, Â £ 5.00 귀하의 계정에서 인출되어, 당신의 지불 주셔서 감사합니다. | XXXX | XX | XXXX-XXX-XXX
표 데프 inition
CREATE MULTISET TABLE DATABASE1.TABLE1 ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT,
DEFAULT MERGEBLOCKRATIO
(
FIELD1 VARCHAR(25) CHARACTER SET LATIN NOT CASESPECIFIC,
FIELD2 VARCHAR(750) CHARACTER SET LATIN NOT CASESPECIFIC,
FIELD3 VARCHAR(35) CHARACTER SET LATIN NOT CASESPECIFIC,
FIELD4 VARCHAR(35) CHARACTER SET LATIN NOT CASESPECIFIC,
FIELD5 VARCHAR(50) CHARACTER SET LATIN NOT CASESPECIFIC
) PRIMARY INDEX (FIELD1);
빠른로드 코드
fastload <<-EOF
.LOGON username/pass;
DATABASE DATABASE1;
SET RECORD VARTEXT "|";
BEGIN LOADING TABLE1
ERRORFILES TABLE1_ERR1,
TABLE1_ERR2;
DEFINE
FIELD1 (VARCHAR(25))
FIELD2 (VARCHAR(750))
FIELD3 (VARCHAR(35))
FIELD4 (VARCHAR(35))
FIELD5 (VARCHAR(50))
FILE=${LOAD_FILE};
SHOW;
INSERT INTO DATABASE1.TABLE1
(
FIELD1 ,
FIELD2 ,
FIELD3 ,
FIELD4 ,
FIELD5
)
VALUES
(
:FIELD1 ,
:FIELD2 ,
:FIELD3 ,
:FIELD4 ,
:FIELD5
);
.END LOADING;
.LOGOFF;
.QUIT;
EOF
사람이이 문제를 해결하는 방법을 알고 있나요, 내가 솔라리스 10 빠른로드 유틸리티에서이 작업을 실행하고 v12.00.00.011
로드에 잘못된 문자 집합이 사용되었을 가능성이 있습니다. Btw, 12는 veeeery 오래된 릴리스입니다. – dnoeth
말해보기! 아쉽게도 변경할 수 없습니다. – Charabon
CSV 파일의 문자 집합을 변환 해보십시오. 전환 옵션은이 링크를 참조하십시오 http://stackoverflow.com/questions/64860/best-way-to-convert-text-files-between-character-sets – xenodevil