Latin and Unicode fields - Teradata connector

Post questions here relative to DataStage Enterprise/PX Edition for such areas as Parallel job design, Parallel datasets, BuildOps, Wrappers, etc.

Moderators: chulett, rschirm, roy

Post Reply
techiexavier
Participant
Posts: 39
Joined: Tue Feb 28, 2012 12:59 pm
Location: Chennai

Latin and Unicode fields - Teradata connector

Post by techiexavier »

Hi All,

Our job design is as below,

Dataset --> Transformer --> Teradata connector.

We are having both Latin and Unicode character set fields in the target table. Currently in job level and Teradata connector we have the NLS setting as UTF8. The job works only if we get Unicode character and gets aborted if any Latin chars for any of the fields.

But if we change the NLS to LATIN1_0A, job aborts if any Unicode chars for any fields. Any help to have both kind of chars being processed with one job for the same table.

TIA.
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

The LATIN-1 character set is a subset of Unicode as well as being a subset of UTF-8 so I am not sure of how you can be getting errors in this case. What exactly is your error message?
techiexavier
Participant
Posts: 39
Joined: Tue Feb 28, 2012 12:59 pm
Location: Chennai

Post by techiexavier »

RDBMS code 6706: Field POSTAL_CODE (CC_TeraAdapter::SelectLoadErrorTable1, file CC_TeraAdapter.cpp, line 7,721)

POSTAL_CODE field is of type latin in the target table.
ArndW
Participant
Posts: 16318
Joined: Tue Nov 16, 2004 9:08 am
Location: Germany
Contact:

Post by ArndW »

Ahh, that is different - you are probably trying to put a Unicode (or UTF8) value in a LATIN-1 field and that won't work.

Why not define your POSTAL_CODE as a LATIN-1 in your DataStage source and DataStage job if it only contains LATIN-1 characters?
techiexavier
Participant
Posts: 39
Joined: Tue Feb 28, 2012 12:59 pm
Location: Chennai

Post by techiexavier »

Hi,

Thanks for your reply. But in DB, i have the postal code field as LATIN. Below is my table script.

My issue is, since i have UTF-8 at job level now, i am getting this abort. If i have LATIN1_0A the job fails for the filed "Id". So in either case my job aborts and i am getting the data in TEST_ET table.

CREATE MULTISET TABLE DB.TEST ,NO FALLBACK ,
NO BEFORE JOURNAL,
NO AFTER JOURNAL,
CHECKSUM = DEFAULT,
DEFAULT MERGEBLOCKRATIO
id VARCHAR(15) CHARACTER SET UNICODE NOT CASESPECIFIC NOT NULL,
name VARCHAR(90) CHARACTER SET LATIN NOT CASESPECIFIC NOT NULL,
postal_code VARCHAR(30) CHARACTER SET LATIN NOT CASESPECIFIC NOT NULL
PRIMARY INDEX ( id );
Post Reply