Im connecting to an ORACLE 7.3 database with the BDE (and SQL-net).
That's going fine but i'm having a problem with signs like 'ë' which
shows as 'k'. Is it a langdriver setting. if so what langdriver should i
use? or could it be a setting of SQL-net
thanks a lot for your help.
in reply's (preferably via e-mail) remove NOSPAM from the adress
in Germany it could be
- GERMAN_GERMANY.WE8ISO8859P1
- PDOX ANSI INTL
regards
Nicolas
Frans schrieb in Nachricht <35C842...@som.nlNOSPAM>...
The Details:
Areas can modified in special places:
1., connecting at the context of SYS user you can modify a special "hidden"
table named PROPS$.
Here is a sample SQL script how to set it : (It is tuned for Hungarian
environment)
- UPDATE SYS.PROPS$ SET VALUE$='HUNGARIAN' WHERE NAME='NLS_LANGUAGE';
- UPDATE SYS.PROPS$ SET VALUE$='HUNGARY' WHERE NAME='NLS_TERRITORY';
- UPDATE SYS.PROPS$ SET VALUE$='Ft' WHERE NAME='NLS_CURRENCY';
- UPDATE SYS.PROPS$ SET VALUE$='HUNGARY' WHERE NAME='NLS_ISO_CURRENCY';
- UPDATE SYS.PROPS$ SET VALUE$='. ' WHERE NAME='NLS_NUMERIC_CHARACTERS';
- UPDATE SYS.PROPS$ SET VALUE$='YYYY.MM.DD' WHERE NAME='NLS_DATE_FORMAT';
- UPDATE SYS.PROPS$ SET VALUE$='HUNGARIAN' WHERE NAME='NLS_DATE_LANGUAGE';
- UPDATE SYS.PROPS$ SET VALUE$='HUNGARIAN' WHERE NAME='NLS_SORT';
COMMIT;
2., To modify the Instance parameter you should modify the Oracle
startup parameter file usually named initorcl.ora or initXXXX.ora
where XXXX is an Oracle "SID".
You can append this at the end of the file : (It is tuned for Hungarian
environment)
nls_language = HUNGARIAN
nls_sort = HUNGARIAN
nls_territory = HUNGARY
nls_date_format = YYYY.MM.DD
nls_date_language = HUNGARIAN
nls_currency = Ft
nls_iso_currency = HUNGARY
nls_numeric_characters = ". "
3., The "session" settings can be modified at the client machine's
"configuration place" it is the Registry on Windows(Win32). (I don't now
what is on MAC).
So on Win32 platforms the Registry key can be found under
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE and
HKEY_LOCAL_MACHINE\SOFTWARE\ORACLE\ORACLE_HOMES\ORACLE1
you can set for example the Date Format by adding the following "string" key
:
NLS_DATE_FORMAT="YYYY.MM.DD"
(Hungarian Date Format)
It was the Oracle part of the story, lets see the Borland (BDE) part of the
story:
1., There is a "system" level language driver can be set with the BDE
Administrator:
"Configuration" -> "System" -> "INIT" -> "LANGDRIVER"
2., There is a driver/alias/database level language driver can be set with
the BDE Administrator:
It can be set from Delphi throught the TDatabase.Params property you can add
the line LANGDRIVER=ANHUNDC for example which is the correct Hungarian
landriver. If you don't set this parameter the default will be used which
can be set with the BDE Administrator:
"Configuration" -> "Drivers" -> "Native" or! "ODBC" -> "any dbms driver" ->
"LANGDRIVER"
It is a good idea to set up these values at BDE Admin, if you forget to set
up explicitely in your Delphi code.
Regards
Dezso Meszaros
de...@park.fph.hu