in reply to Is setting $ENV{'NLS_LANG'} deprecated?

Locutus,
According to the docs, you'll need to use AL32UTF8 instead of UTF8. See: Oracle_UTF8_is_not_UTF-8 and note the following:
Fetching Data

Any data returned from Oracle to DBD::Oracle in the AL32UTF8 character set will be marked as UTF-8 to ensure correct handling by Perl.

For Oracle to return data in the AL32UTF8 character set the NLS_LANG or NLS_NCHAR environment variable must be set as described in the previous section.

When fetching NCHAR, NVARCHAR, or NCLOB data from Oracle, DBD::Oracle will set the Perl UTF-8 flag on the returned data if either NLS_NCHAR is AL32UTF8, or NLS_NCHAR is not set and NLS_LANG is AL32UTF8.

When fetching other character data from Oracle, DBD::Oracle will set the Perl UTF-8 flag on the returned data if NLS_LANG is AL32UTF8.
  • Comment on Re: Is setting $ENV{'NLS_LANG'} deprecated?