Unwanted data conversion

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
babbu9
Premium Member
Premium Member
Posts: 75
Joined: Tue Jun 01, 2004 9:44 am

Unwanted data conversion

Post by babbu9 »

Hi
I have a SQL server source with an NLS of SQL_LATIN1_GENERAL_CP1_CI_AS
and an Oracle Target with NLS settingof AMERICAN.

When I load data from source to target, some of the data is being changed
Ex: ? changed to |

Is this an NLS problem? What is the correct NLS setting that can be used in this case.

The Current NLS setting on the souce and target stages is windows-1252.
We are facing a lot of problems with NLS and do not know how to set NLS once for all so that we dont have to deal with it again.

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

Post by ArndW »

Your source data is encoded in character set that I don't know - but you need to check if the extended (non-latin) characters are mapped the same way that Windows-1252 maps them. If not you will get misconverted characters.

NLS is not as complex as it seems - the difficulty lies in making sure that you know which set you are using at any stage and what conversions the system is doing. If in doubt, always take a row of data that you know and print out the ASCII values to see what has happened to that character. Never rely on the displayed glyph; most of the time the so-called error isn't in the data but in the display layer (be it "view data" in a designer window or printing out of data from a text file).
Post Reply