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コードが
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
は、誰もがこの問題を解決する方法を知っています、私は、Solaris 10 FASTLOADユーティリティからこれを実行しています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