![]() | |
#1
| |||
| |||
|
#2
| |||
| |||
|
|
I'm setting up Oracle libraries in a Windows Server box so two PHP web sites can access a remote Oracle 10g database. I've downloaded the Instant Client *.zip package and everything works fine so far, except for some charset issues (Spanish letters do not show properly). Setting NLS_LANG environmental variable seems to be the clue but I don't know which value I should use. Given that data is in Spanish I have three likely candidates: SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? -- -- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain -- Mi sitio sobre programación web: http://bits.demogracia.com -- Mi web de humor al baño María: http://www.demogracia.com |
#3
| |||
| |||
|
|
I'm setting up Oracle libraries in a Windows Server box so two PHP web sites can access a remote Oracle 10g database. I've downloaded the Instant Client *.zip package and everything works fine so far, except for some charset issues (Spanish letters do not show properly). Setting NLS_LANG environmental variable seems to be the clue but I don't know which value I should use. Given that data is in Spanish I have three likely candidates: SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? -- -- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain -- Mi sitio sobre programación web: http://bits.demogracia.com -- Mi web de humor al baño María: http://www.demogracia.com |
#4
| |||
| |||
|
|
I'm setting up Oracle libraries in a Windows Server box so two PHP web sites can access a remote Oracle 10g database. I've downloaded the Instant Client *.zip package and everything works fine so far, except for some charset issues (Spanish letters do not show properly). Setting NLS_LANG environmental variable seems to be the clue but I don't know which value I should use. Given that data is in Spanish I have three likely candidates: SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? -- -- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain -- Mi sitio sobre programación web: http://bits.demogracia.com -- Mi web de humor al baño María: http://www.demogracia.com |
#5
| |||
| |||
|
|
I'm setting up Oracle libraries in a Windows Server box so two PHP web sites can access a remote Oracle 10g database. I've downloaded the Instant Client *.zip package and everything works fine so far, except for some charset issues (Spanish letters do not show properly). Setting NLS_LANG environmental variable seems to be the clue but I don't know which value I should use. Given that data is in Spanish I have three likely candidates: SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? -- -- http://alvaro.es - Álvaro G. Vicario - Burgos, Spain -- Mi sitio sobre programación web: http://bits.demogracia.com -- Mi web de humor al baño María: http://www.demogracia.com |
#6
| |||
| |||
|
|
SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? You could find out by querying NLS_DATABASE_PARAMETERS. |
|
However, for Windows the default is MSWIN1252. WE8ISO8859P1 does not contain the euro sign. |
#7
| |||
| |||
|
|
SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? You could find out by querying NLS_DATABASE_PARAMETERS. |
|
However, for Windows the default is MSWIN1252. WE8ISO8859P1 does not contain the euro sign. |
#8
| |||
| |||
|
|
SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? You could find out by querying NLS_DATABASE_PARAMETERS. |
|
However, for Windows the default is MSWIN1252. WE8ISO8859P1 does not contain the euro sign. |
#9
| |||
| |||
|
|
SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? You could find out by querying NLS_DATABASE_PARAMETERS. |
|
However, for Windows the default is MSWIN1252. WE8ISO8859P1 does not contain the euro sign. |
#10
| |||
| |||
|
|
SPANISH_SPAIN.WE8MSWIN1252 (the Windows codepage) SPANISH_SPAIN.WE8ISO8859P1 (ISO-Latin-1, used in first site) SPANISH_SPAIN.WE8ISO8859P15 (ISO-Latin-9, used in second site) From the "Oracle Database Globalization Support Guide" I understand that NLS_LANG makes Oracle perform a charset conversion. Since both sites use different charsets and I can convert in my PHP app when necessary, I think it'd be a good idea that Oracle does not make any conversion. But I don't know how to find out the charset that database tables are using natively. How could I find out? Does all this make any sense? You could find out by querying NLS_DATABASE_PARAMETERS. A query to that table shows that NLS_CHARACTERSET is WE8ISO8859P1 so I'll work on that base. However, for Windows the default is MSWIN1252. WE8ISO8859P1 does not contain the euro sign. You are right (I've seen apps that use the currency symbol instead). Luckily it's not really an issue in web sites since you can always use the € entity--I just need to know what charset the data is actually using. |
![]() |
| Thread Tools | |
| Display Modes | |
| |