<?xml version="1.0" encoding="UTF-8"?>
<rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:taxo="http://purl.org/rss/1.0/modules/taxonomy/" version="2.0">
  <channel>
    <title>topic Re: How to change nls_sort in tOracle_Output component. in Talend Studio</title>
    <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256134#M38619</link>
    <description>_________________________________________________________________________ 
&lt;BR /&gt;You can set this parameter for the connection. I would recommend using one connection for all database components within a job and at first using tOracleRow to set the nls_sort parameter (sorry, I don't how, but I know there are a SQL command to do that). 
&lt;BR /&gt;tOracleConnection -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (changing the connection parameter) -&amp;gt; OnSubjobOk -&amp;gt; your work to do.... 
&lt;BR /&gt;Last edited by jlolling (Yesterday 15:59:21) 
&lt;BR /&gt;Talend Certified working for cimt objects AG in Berlin 
&lt;BR /&gt;_________________________________________________________________________ 
&lt;BR /&gt;I tried to make this but, it didn´t work. First I need to have 2 connection, 1 for input and other to output, because of the grant of each user connections in each table, of each schema. I have same database but, differents schemas and tables. 
&lt;BR /&gt;So, I tried with: tOracleConnection (for tOracleOutput) -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (alter session set nls_sort='BINARY') -&amp;gt; OnSubjobOk -&amp;gt; tOracleConnection (for tOracleInput) -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (alter session set nls_sort='BINARY') -&amp;gt; tOracleInput (for input data) -&amp;gt; tMap -&amp;gt; tOracleOutput. 
&lt;BR /&gt;Seeing the Oracle database I found the sql insert command and its execution plan with the clause : 
&lt;BR /&gt;filter(NLSSORT("IG",'nls_sort=''WEST_EUROPEAN''')=NLSSORT(:1,'nls_sort=''WEST_EUROPEAN''')), although I have put 'NLS_SORT=Binary', with a 'index full scan' using the primary key with datatype varchar2(9). It causes a bad performance. 
&lt;BR /&gt;Any suggestions ?</description>
    <pubDate>Fri, 11 Jan 2013 16:16:07 GMT</pubDate>
    <dc:creator>_AnonymousUser</dc:creator>
    <dc:date>2013-01-11T16:16:07Z</dc:date>
    <item>
      <title>How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256132#M38617</link>
      <description>In same Database, I use a tOracle_Input component to select rows in table with a comand like 'select * from table'. Then I use a tMap component without doing any transformation. And, so I use a tOracle_Output component to insert or update other table with input data. The input and output tables are identical and have a Primary Key with datatype varchar2. The problem is: when the tOracle_Output component works to insert or update the row, it sends a comand to database with a convert clause like 'filter(NLSSORT("IG",'nls_sort=''WEST_EUROPEAN''')=NLSSORT(:1,'nls_sort=''WEST_EUROPEAN'''))'. This clause avoid the use of index, which forces the database to make a full table scan. 
&lt;BR /&gt;As I'm talking about the same database, and then, I'm talking about the same 'nls_sort', I think that, when the tOracle_Input component gets the rows, then it also converts to a nls_sort 'WEST_EUROPEAN'. If I can change the default nls_sort of the talend or its component, I can solve the performance problem. Do you have any other suggestions ? How can I change the nls_sort default of the talend or its component ?
&lt;BR /&gt;Regards,
&lt;BR /&gt;Marcio.</description>
      <pubDate>Thu, 10 Jan 2013 13:43:51 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256132#M38617</guid>
      <dc:creator>_AnonymousUser</dc:creator>
      <dc:date>2013-01-10T13:43:51Z</dc:date>
    </item>
    <item>
      <title>Re: How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256133#M38618</link>
      <description>You can set this parameter for the connection. I would recommend using one connection for all database components within a job and at first using tOracleRow to set the nls_sort parameter (sorry, I don't how, but I know there are a SQL command to do that).
&lt;BR /&gt;tOracleConnection -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (changing the connection parameter) -&amp;gt; OnSubjobOk -&amp;gt; your work to do....</description>
      <pubDate>Thu, 10 Jan 2013 14:58:23 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256133#M38618</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-01-10T14:58:23Z</dc:date>
    </item>
    <item>
      <title>Re: How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256134#M38619</link>
      <description>_________________________________________________________________________ 
&lt;BR /&gt;You can set this parameter for the connection. I would recommend using one connection for all database components within a job and at first using tOracleRow to set the nls_sort parameter (sorry, I don't how, but I know there are a SQL command to do that). 
&lt;BR /&gt;tOracleConnection -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (changing the connection parameter) -&amp;gt; OnSubjobOk -&amp;gt; your work to do.... 
&lt;BR /&gt;Last edited by jlolling (Yesterday 15:59:21) 
&lt;BR /&gt;Talend Certified working for cimt objects AG in Berlin 
&lt;BR /&gt;_________________________________________________________________________ 
&lt;BR /&gt;I tried to make this but, it didn´t work. First I need to have 2 connection, 1 for input and other to output, because of the grant of each user connections in each table, of each schema. I have same database but, differents schemas and tables. 
&lt;BR /&gt;So, I tried with: tOracleConnection (for tOracleOutput) -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (alter session set nls_sort='BINARY') -&amp;gt; OnSubjobOk -&amp;gt; tOracleConnection (for tOracleInput) -&amp;gt; OnSubjobOk -&amp;gt; tOracleRow (alter session set nls_sort='BINARY') -&amp;gt; tOracleInput (for input data) -&amp;gt; tMap -&amp;gt; tOracleOutput. 
&lt;BR /&gt;Seeing the Oracle database I found the sql insert command and its execution plan with the clause : 
&lt;BR /&gt;filter(NLSSORT("IG",'nls_sort=''WEST_EUROPEAN''')=NLSSORT(:1,'nls_sort=''WEST_EUROPEAN''')), although I have put 'NLS_SORT=Binary', with a 'index full scan' using the primary key with datatype varchar2(9). It causes a bad performance. 
&lt;BR /&gt;Any suggestions ?</description>
      <pubDate>Fri, 11 Jan 2013 16:16:07 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256134#M38619</guid>
      <dc:creator>_AnonymousUser</dc:creator>
      <dc:date>2013-01-11T16:16:07Z</dc:date>
    </item>
    <item>
      <title>Re: How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256135#M38620</link>
      <description>I cannot imagine why the tOracleOutput component should create this kind of statements.&lt;BR /&gt;In the code of the tOracleOutput component there is no sql code like this.&lt;BR /&gt;Can you please post the picture of your job and the properties of the tOracleOutput component?</description>
      <pubDate>Fri, 11 Jan 2013 22:22:16 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256135#M38620</guid>
      <dc:creator>Anonymous</dc:creator>
      <dc:date>2013-01-11T22:22:16Z</dc:date>
    </item>
    <item>
      <title>Re: How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256136#M38621</link>
      <description>Hi, I uploaded the picture of my job in: 
&lt;BR /&gt;
&lt;A href="https://plus.google.com/photos/115901751524062895350/albums/5833268675260405105" rel="nofollow noopener noreferrer"&gt;https://plus.google.com/photos/115901751524062895350/albums/5833268675260405105&lt;/A&gt;
&lt;BR /&gt;I think it happens when the tOracleOutput component makes connection with the Oracle database. Perhaps the component tOracleOutput may had changed the nlssort parameter of the session that has been opened.</description>
      <pubDate>Mon, 14 Jan 2013 12:06:25 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256136#M38621</guid>
      <dc:creator>_AnonymousUser</dc:creator>
      <dc:date>2013-01-14T12:06:25Z</dc:date>
    </item>
    <item>
      <title>Re: How to change nls_sort in tOracle_Output component.</title>
      <link>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256137#M38622</link>
      <description>I think the problema is: 
&lt;BR /&gt;When I do the follow command in other than TOS (like sqlplus/toad/sqltools): 
&lt;BR /&gt;"select * from nls_session_parameters;" 
&lt;BR /&gt;I get this result: 
&lt;BR /&gt;PARAMETER VALUE 
&lt;BR /&gt;------------------------------ --------------------------------- 
&lt;BR /&gt;NLS_LANGUAGE AMERICAN 
&lt;BR /&gt;NLS_TERRITORY AMERICA 
&lt;BR /&gt;NLS_CURRENCY $ 
&lt;BR /&gt;NLS_ISO_CURRENCY AMERICA 
&lt;BR /&gt;NLS_NUMERIC_CHARACTERS ., 
&lt;BR /&gt;NLS_CALENDAR GREGORIAN 
&lt;BR /&gt;NLS_DATE_FORMAT dd/mm/yyyy 
&lt;BR /&gt;NLS_DATE_LANGUAGE AMERICAN 
&lt;BR /&gt;NLS_SORT BINARY 
&lt;BR /&gt;NLS_TIME_FORMAT HH.MI.SSXFF AM 
&lt;BR /&gt;NLS_TIMESTAMP_FORMAT DD-MON-RR HH.MI.SSXFF AM 
&lt;BR /&gt;NLS_TIME_TZ_FORMAT HH.MI.SSXFF AM TZR 
&lt;BR /&gt;NLS_TIMESTAMP_TZ_FORMAT DD-MON-RR HH.MI.SSXFF AM TZR 
&lt;BR /&gt;NLS_DUAL_CURRENCY $ 
&lt;BR /&gt;NLS_COMP BINARY 
&lt;BR /&gt;NLS_LENGTH_SEMANTICS BYTE 
&lt;BR /&gt;NLS_NCHAR_CONV_EXCP FALSE 
&lt;BR /&gt;When I do the follow command in TOS: 
&lt;BR /&gt;"select * from nls_session_parameters" 
&lt;BR /&gt;I get other result: 
&lt;BR /&gt;NLS_LANGUAGE BRAZILIAN PORTUGUESE 
&lt;BR /&gt;NLS_TERRITORY BRAZIL 
&lt;BR /&gt;NLS_CURRENCY R$ 
&lt;BR /&gt;NLS_ISO_CURRENCY BRAZIL 
&lt;BR /&gt;NLS_NUMERIC_CHARACTERS ,. 
&lt;BR /&gt;NLS_CALENDAR GREGORIAN 
&lt;BR /&gt;NLS_DATE_FORMAT DD/MM/RR 
&lt;BR /&gt;NLS_DATE_LANGUAGE BRAZILIAN PORTUGUESE 
&lt;BR /&gt;NLS_SORT WEST_EUROPEAN 
&lt;BR /&gt;NLS_TIME_FORMAT HH24:MI 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M9p6.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/134116iFBD5D7F21624A744/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M9p6.png" alt="0683p000009M9p6.png" /&gt;&lt;/span&gt;SXFF 
&lt;BR /&gt;NLS_TIMESTAMP_FORMAT DD/MM/RR HH24:MI 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M9p6.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/134116iFBD5D7F21624A744/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M9p6.png" alt="0683p000009M9p6.png" /&gt;&lt;/span&gt;SXFF 
&lt;BR /&gt;NLS_TIME_TZ_FORMAT HH24:MI 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M9p6.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/134116iFBD5D7F21624A744/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M9p6.png" alt="0683p000009M9p6.png" /&gt;&lt;/span&gt;SXFF TZR 
&lt;BR /&gt;NLS_TIMESTAMP_TZ_FORMAT DD/MM/RR HH24:MI 
&lt;span class="lia-inline-image-display-wrapper" image-alt="0683p000009M9p6.png"&gt;&lt;img src="https://community.qlik.com/t5/image/serverpage/image-id/134116iFBD5D7F21624A744/image-size/large?v=v2&amp;amp;px=999" role="button" title="0683p000009M9p6.png" alt="0683p000009M9p6.png" /&gt;&lt;/span&gt;SXFF TZR 
&lt;BR /&gt;NLS_DUAL_CURRENCY Cr$ 
&lt;BR /&gt;NLS_COMP ANSI 
&lt;BR /&gt;NLS_LENGTH_SEMANTICS BYTE 
&lt;BR /&gt;NLS_NCHAR_CONV_EXCP FALSE 
&lt;BR /&gt;The nls_comp and nls_sort parameter are not the same. So Oracle DB does 'full table scan'. 
&lt;BR /&gt;Can you help with : How can I change it in oracle connections in TOS ?</description>
      <pubDate>Mon, 14 Jan 2013 17:22:29 GMT</pubDate>
      <guid>https://community.qlik.com/t5/Talend-Studio/How-to-change-nls-sort-in-tOracle-Output-component/m-p/2256137#M38622</guid>
      <dc:creator>_AnonymousUser</dc:creator>
      <dc:date>2013-01-14T17:22:29Z</dc:date>
    </item>
  </channel>
</rss>

