This discussion is archived
1 2 Previous Next 27 Replies Latest reply: Aug 5, 2012 6:39 AM by Sergiusz Wolicki (Oracle) Go to original post RSS
  • 15. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Hi,

    Ok, if I understood, do you recommend I modify my DBF_TO_ORACLE loader tool, to convert the sequence for "end-of-lines" to another sequence that will work fine in TOAD, SQLPLUS, SQLDEVELOPER, etc., as well as in my DOS-Application? (remember my DBF_TO_ORACLE loader tool is not making any conversion at this moment as suggested by you).

    If your response is "YES", could you suggest the target sequence that could work fine in Oracle in TOAD, SQLPLUS, SQLDEVELOPER, etc., as well as in my DOS-Application, in the current code page, nls_lang and database character set ?

    Thanks in advance,

    Luigggye
  • 16. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    +## as well as in my DOS-Application+

    This code (0x8D) seems to be specific to your application. I do not know the application so I cannot tell what will work well with it. The standard end-of-line sequence for Windows and DOS is 0x0d 0x0a, so 0x8d should become 0x0d. It should work well with most software, including Oracle's but I cannot guarantee it will work well with your application.


    -- Sergiusz
  • 17. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Thanks for your response again.

    Ok, I will ask you in another way in order to be sure.

    What is the target sequence for "end-of-lines" that could work fine in Oracle in TOAD, SQLPLUS, SQLDEVELOPER, etc. ?

    Don´t worry about my DOS-Application, I will modify my DOS-Application to support any sequence, wherever it is.

    You said: “The standard end-of-line sequence for Windows and DOS is 0x0d 0x0a”

    Therefore, should I convert DBF "end-of-lines" to Oracle 0x0d 0x0a ? right?

    Thanks in advance,

    Luigggye
  • 18. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Hi

    This is the current situation.

    I modified the DBF_TO_ORACLE utility to convert end-of-lines to the sequence suggested by you.

    I re-load the data to Oracle.

    See the current settings

    NLS_LAN current setting in registry http://www.screencast.com/t/1wUR7TbcciU

    NLS_LAN current setting in DOS http://www.screencast.com/t/QoKrdKlEj

    Query in TOAD http://www.screencast.com/t/fbsGIZsuwTx (is 100% ok)

    Query in SQLPLUS DOS http://www.screencast.com/t/o1uy6Dp2FGe (is 100% ok)

    Query in PLSQL Developer http://www.screencast.com/t/DnXrX5Ms (bad characters)

    Query in PLSQL Developer (more details) http://www.screencast.com/t/G5Y74nkKUAN0 (bad characters)

    Query in SQLPLUS Windows http://www.screencast.com/t/koqFcPrjrkvu (bad characters)

    Query in SQLPLUS Worksheet http://www.screencast.com/t/1ohTwb2VoI (bad characters)

    I was searched for NLS_LANG in all registry (I found it 7 times), and set BRAZILIAN PORTUGUESE_BRAZIL.WE8PC850 in all occurrences (I was checked twice).

    My DOS application reads, writes, and shows the Brazilian accentuated characters fine, without any problem. http://www.screencast.com/t/ak2rUKdegU

    So, I don´t understand, how TOAD-Windows and SQLPLUS-DOS show the all characters 100% ok, but PLSQL Developer, SQLPLUS-WINDOWS, SQLPLUS Worksheets show bad characters….!!

    I believe now the data in the database is ok, but there are some mistake in NLS_LANG configuration for PLSQL Developer, SQLPLUS-WINDOWS and SQLPLUS Worksheet… do you agreed with it?

    If I understood your previous comment, all windows clients as (TOAD, PLSQL Developer, SQLPLUS-WINDOWS and SQLPLUS Worksheet, use the NSL_LANG from the Windows Registry, and in all occurrences is set to BRAZILIAN PORTUGUESE_BRAZIL.WE8PC850

    Any idea?

    Thanks in advance,

    Luigggye

    Edited by: 880676 on Jul 30, 2012 12:18 AM
  • 19. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    If I understood your previous comment, all windows clients as (TOAD, PLSQL Developer, SQLPLUS-WINDOWS and SQLPLUS Worksheet, use the NSL_LANG from the Windows Registry, and in all occurrences is set to BRAZILIAN PORTUGUESE_BRAZIL.WE8PC850

    I was quite precise in my comments that Windows GUI clients, such as TOAD, PLSQL Developer, SQL*Plus GUI, use NLS_LANG from the Windows Registry and this NLS_LANG should be set to BRAZILIAN PORTUGUESE_BRAZIL.WE8MSWIN1252 !


    -- Sergiusz
  • 20. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Hi,

    Ok, sorry if I don´t understood your previous comments.

    I have changed now all occurrences of NLS_LANG Registry to BRAZILIAN PORTUGUESE_BRAZIL.WE8MSWIN1252 http://www.screencast.com/t/rsmRTHeYyi ok ?

    The NLS_LAN current setting in DOS still http://www.screencast.com/t/QoKrdKlEj ok?

    But I can´t see any change.

    The TOAD-Windows and SQLPLUS-DOS show the all characters 100% ok, but PLSQL Developer, SQLPLUS-WINDOWS and SQLPLUS Worksheets show bad characters….!!

    Of course I was closed and re-opened the PLSQL Developer, SQLPLUS-WINDOWS and SQLPLUS Worksheets, and built the query again with the same bad characters.

    Sorry, I am confused right now.

    Luigggye
  • 21. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    Have you followed my request exactly:

    "4) You set the NLS_LANG variable to .WE8PC850 using the SET command in the same Command Prompt (DOS) window in which you start your application."

    or have you set the variable globally for all Command Prompt (DOS) windows through Control Panel/Computer Properties?


    -- Sergiusz
  • 22. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Yes..

    This was the steps I have done.

    I have set (before to load the DBF to Oracle) NLS_LANG=BRAZILIAN PORTUGUESE_BRAZIL.WE8PC850

    In DOS http://www.screencast.com/t/CtFRSSs9XuLv

    In Windows Registry http://www.screencast.com/t/xpcsmNvIkjPS


    I loaded the DBF to Oracle with the DBF_TO_ORACLE tool with no code page conversion, the only conversion is for the “end-of-lines” to 0x0d 0x0a

    After that, I have changed all the NLS_LANG Windows Registry to http://www.screencast.com/t/rsmRTHeYyi

    And, tried the queries…. In TOAD, SQLPLUS-DOS-, SQLPLUS-WINDOWS, SQLPLUS DEVELOPER, SQLPLUS WINDOWS, ETC.

    I don´t loaded the data again, after changed the registry because I believe it is not necessary.

    If I understood, is a fact that the NLS_LANG setting for Windows Registry settings will be http://www.screencast.com/t/rsmRTHeYyi

    If I understood, is a fact that the NLS_LANG settings for DOS will be http://www.screencast.com/t/CtFRSSs9XuLv

    So, how is possible that TOAD-WINDOWS and SQLPLUS-DOS show all data ok ?, and the others not?

    Do you agreed that the loaded data in Oracle is correct now ?

    Remember the Toad Windows, SqlPlus-DOS and My DOS-Application, show the data 100% Ok, for me is a prove that the data in Oracle is OK. Right?

    Questions:

    1.     Should I configure the NLS_LANG for the SQLPLUS-WINDOWS into the SQLPLUS-WINDOWS program ? How? Where?

    2.     Should I configure the NLS_LANG for the SQLPLUS Developer into the SQLPLUS Developer? program ? How? Where?

    3.     Or this Windows programs always will get the NLS_LANG only from the registry…?


    Regarding:

    Have you followed my request exactly:

    "4) You set the NLS_LANG variable to .WE8PC850 using the SET command in the same Command Prompt (DOS) window in which you start your application."

    or have you set the variable globally for all Command Prompt (DOS) windows through Control Panel/Computer Properties?

    .......

    First I have set the NLS_LANG variable to .WE8PC850 using the SET command in the same Command Prompt (DOS) window in which you start your application

    And loaded the data.

    After that I have set the variable globally for all Command Prompt (DOS) windows through Control Panel /System / Advanced / Environment variables .... is that a problem?



    Thanks in advance,

    Luigggye
  • 23. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    After that I have set the variable globally for all Command Prompt (DOS) windows through Control Panel /System / Advanced / Environment variables .... is that a problem?

    Yes, it is! The variable set through Control Panel /System / Advanced / Environment variables will override Registry and influence the GUI applications as well (except SQL Developer, which does not care about NLS_LANG). For DOS programs -- your application, SQL*Plus DOS, and the loading application -- you should set NLS_LANG=.WE8PC850 only in the window from which you start the application (you may use a *.BAT file for this purpose). NLS_LANG in Registry should always be .WE8MSWIN1252. NLS_LANG should not be set in "Control Panel /System / Advanced / Environment variables" at all.


    -- Sergiusz
  • 24. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    Ok, now all is working fine.

    Thanks so much..!!

    Luigggye
  • 25. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    Great! Then, please, close this thread as answered.


    -- Sergiusz
  • 26. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    883679 Newbie
    Currently Being Moderated
    ups... I can´t the way to close it....
  • 27. Re: How to change the NLS_NCHAR_CHARACTERSET from WE8ISO8859P1 to AL16UTF16 ?
    Sergiusz Wolicki (Oracle) Expert
    Currently Being Moderated
    As this thread was cloned from another one, it looks like it was not marked as a question. Therefore, you cannot actually mark it as answered :-) It is OK.


    -- Sergiusz
1 2 Previous Next