As I remember, I had to use both the NLS_LANG environmental variable and the ora_charset connect attribute to successfully insert and extract. This seems to be in conflict with the docs, which imply they are redundant.$ENV{NLS_LANG} = 'AMERICAN_AMERICA.AL32UTF8'; my $db = DBI->connect( $dbid, $user, $pass, { PrintError => 0, RaiseError => 1, AutoCommit => 0, ora_charset => 'AL32UTF8', }, ); $db->do("ALTER SESSION SET NLS_DATE_FORMAT='yyyy-mm-dd'");
The bigger question to consider is how do you know you've inserted correctly, and how do you know your extract is failing? There are many points along a pipeline where an encoding can fail. Have you verified basic input and output? Printed out the string using an encoding such as HTML::Entities so that the output is ASCII?
#11929 First ask yourself `How would I do this without a computer?' Then have the computer do it the same way.
In reply to Re: DBD::Oracle - Character Encoding Conversion
by kennethk
in thread DBD::Oracle - Character Encoding Conversion
by Zygomax
| For: | Use: | ||
| & | & | ||
| < | < | ||
| > | > | ||
| [ | [ | ||
| ] | ] |