in reply to DBD::Oracle - Character Encoding Conversion
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.
|
|---|