Orchestrate Schema Definitions and Oracle issues
Posted: Wed Jun 04, 2008 11:54 pm
We have a Oracle table which has varchar2 fields. They are defined in the following way:
Field_Name varchar2(n char); here n is the length and we are specifying char inside the parantheses because we want more bytes per character to be assigned. That is a requirement
Now in DataStage 8.0.1 we are using Oracle Enterprise stage and then importing the metadata of the above table using Orchestrate schema definition. The charset/map is UTF-8. So if there is a field varchar2(n char) in oracle then in datastage the field is imported as varchar and the length is 4n and extended Unicode.
This is logical because in Oracle we are specifying char inside the parantheses.
But then we were told that only when reading from Oracle we have to use the above metadata and while in output stages or transformers we have to divide the length for varchar fields by 4. This throws a warning as
main_program: When preparing operator: When setting up transfer for "Field_Name":Implicit conversion from source type "ustring[max=200]" to dest type "ustring[max=50]": Possible truncation of variable length string.
I am not convinced with this logic at all. Can any one explain
Field_Name varchar2(n char); here n is the length and we are specifying char inside the parantheses because we want more bytes per character to be assigned. That is a requirement
Now in DataStage 8.0.1 we are using Oracle Enterprise stage and then importing the metadata of the above table using Orchestrate schema definition. The charset/map is UTF-8. So if there is a field varchar2(n char) in oracle then in datastage the field is imported as varchar and the length is 4n and extended Unicode.
This is logical because in Oracle we are specifying char inside the parantheses.
But then we were told that only when reading from Oracle we have to use the above metadata and while in output stages or transformers we have to divide the length for varchar fields by 4. This throws a warning as
main_program: When preparing operator: When setting up transfer for "Field_Name":Implicit conversion from source type "ustring[max=200]" to dest type "ustring[max=50]": Possible truncation of variable length string.
I am not convinced with this logic at all. Can any one explain