Automic Workload Automation

 View Only

 Automic v24 Unicode support & Database requirements for an Oracle database

Jennifer LeBlanc's profile image
Jennifer LeBlanc posted Sep 17, 2024 02:00 PM

Oracle database defaults have been UTF16 back since Oracle9.  UTF16 supports UNICODE, documented here:  

https://docs.oracle.com/en/database/oracle/oracle-database/12.2/sqlrf/Character-Set-Support.html

"Oracle supports the UTF-8 encoding scheme of the Unicode Standard through the AL32UTF8 character set, the UTF-16BE encoding scheme through the AL16UTF16 character set, and the UTF-16LE encoding scheme through the AL16UTF16LE character set."

Despite all of the documentation I'm seeing for v24 that requires UTF8, my DBA's are telling me this is a huge step backward, as UTF16 supports UNICODE.  I see one statement in the documentation that contains an "IF" statement... : 

https://docs.automic.com/documentation/webhelp/english/ALL/components/DOCU/24.1/Automic%20Automation%20Guides/Content/_Common/ReleaseHighlights/RH_UTF8_24.htm

The Universal Language Support implementation required significant changes that affect the database. For this reason, if the database that you used with versions prior to version 24 did not support UTF-8, then you must migrate it to a new one that is configured for UTF-8. 

Does this mean that Oracle UTF16 is acceptable?  Thanks for opinions here! 

Jennifer LeBlanc's profile image
Jennifer LeBlanc

From a discussion with support, it seems that an Oracle UTF16 db would be sufficient, however, the charset used in our db does not match what is required, so a migration is the best call.  

Thomas Hollensteiner's profile image
Broadcom Employee Thomas Hollensteiner

these are 2 different things - in the past automic customer could use a SINGLE BYTE or an UTF-8 oracle database 

if you run this SQL against your automic db - what do you get at NLS_CHARACTERSET?


if this shows something different f.ex.  'WE8ISO8859P15 / WE8ISO8859P1 / WE8MSWIN1252' your DB was created with a single byte character set

even oracle base might have a different setting 

if this shows the above value there is no need for a migration - just change the connection string - as your DB was already multi-byte in the past

but the connect string MUST have been done with a single-byte code page in past (v21--)

v21--
sqlDriverConnect=ODBCVAR=NNJNIORO,DSN=PER05;UID=THV123;PWD=uc4;SP=NLS_LANGUAGE=AMERICAN,NLS_TERRITORY=AMERICA,CODESET=WE8MSWIN1252,SKIP_UNUSABLE_INDEXES=true,NLS_LENGTH_SEMANTICS='CHAR'

v24++
sqlDriverConnect=ODBCVAR=NNJNIORO,DSN=PER05;UID=THV24;PWD=uc4;SP=NLS_LANGUAGE=AMERICAN,NLS_TERRITORY=AMERICA,CODESET=AL32UTF8,SKIP_UNUSABLE_INDEXES=true

Roney.Uba's profile image
Roney.Uba

Hello,

note that the DB-Load and migration tool check if the character set is exactly AL32UTF8 (there are other UTF-8 character sets available in Oracle DB, but this exact one must be used, otherwise the installation does not proceed).

As recommended by Oracle, "AL32UTF8 is the proper implementation of the Unicode encoding UTF-8." and "AL32UTF8 is used as the default database character set".

https://docs.oracle.com/en/database/oracle/oracle-database/19/nlspg/supporting-multilingual-databases-with-unicode.html

Regards,
Roney