Oracle FAQ Your Portal to the Oracle Knowledge Grid
HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US
 

Home -> Community -> Usenet -> c.d.o.server -> Re: mod_plsql / dad / character set problem

Re: mod_plsql / dad / character set problem

From: Galen Boyer <galen_boyer_at_yahoo.com>
Date: 24 Jun 2006 08:18:03 -0500
Message-ID: <u3bdu1pv2.fsf@rcn.com>


On Fri, 23 Jun 2006, jeremy0505_at_gmail.com wrote:
>
> Hi folks, we are receiving an XML doc POSTed into a PL/SQL procedure
> from a 3rd party. They have recently started including the Euro symbol
> (¤) (not sure if that will have shown in the posting?).
>
> Anyway, this is char(128) in Oracle. No problem storing it in the
> database, no problem displaying it when retrieved from the database.
>
> However, it is being scrambled somewhere in the mod_plsql stage so
> that by the time our pl/sql code gets to see it all it can see is ¿
> (rotated/inverted question mark).
>
> We can receive and handle other accented characters without any
> problem. The DAD is defined as follows:

Not sure what you mean here. Are you using some other interface to the database and "seeing" the character set? Well, if the interface is a browser, you could easily be tricked into believing you are looking at a non-ascii character. Just because you can "see" a character in your "browser", does not mean its stored in an appropriate characterset. The browser has an ascii representation for just about everything. &12344;&12345;&12333; is a concocted example of what I'm talking about.

> <Location /utf8>
> SetHandler pls_handler
> Order deny,allow
> Allow from all
> AllowOverride None
> PlsqlDatabaseUsername <username>
> PlsqlDatabasePassword <password>
> PlsqlDatabaseConnectString prod
> PlsqlAuthenticationMode Basic
> PlsqlNLSLanguage AMERICAN_AMERICA.UTF8
> </Location>
>
> However, if I post the data through url with a DAD defined thus:
>
> <Location /wd/plsql>
> SetHandler pls_handler
> Order deny,allow
> Allow from all
> AllowOverride None
> PlsqlDatabaseUsername <username>
> PlsqlDatabasePassword <password>
> PlsqlDatabaseConnectString prod
> PlsqlAuthenticationMode Basic
> PlsqlNLSLanguage AMERICAN_AMERICA.WE8ISO8859P1
> </Location>
>
>
> the data (Euro sign) is received fine. We set the DAD up as utf8 as we
> were having the same problem with characters being submitted and
> scrambled if we used WE8ISO8859P1.
>
> So we feel as though we are caught between a rock and a hard place -
> cananyone suggest a setting taht might support all our needs (sure I
> haven't defined ALL out needs! - of course I mean something that
> supports western european accented characters as well as the Euro
> symbol)?

I'd convert your database to UTF8 as Sybrand suggests.

-- 
Galen Boyer
Received on Sat Jun 24 2006 - 08:18:03 CDT

Original text of this message

HOME | ASK QUESTION | ADD INFO | SEARCH | E-MAIL US