Extracting Unicode text from Oracle over ODBC

Ben Rubinstein benr_mc at cogapp.com
Tue Mar 1 09:55:12 EST 2022


Hi Jacque

Thanks for replying, but unfortunately these aren't relevant - the binary data 
is coming through fine, but it seems that something upstream has dumbed it down.

Anyone else have any experience with this?

TIA,

Ben

On 28/02/2022 20:04, J. Landman Gay via use-livecode wrote:
> With the caveat that I know nothing about it, the normalize and formSensitive 
> functions sound related.
> 
> On 2/28/22 11:50 AM, Ben Rubinstein via use-livecode wrote:
>> I'm trying to extract text from an Oracle database, via ODBC, on Windows. 
>> (Using the 64 bit "Oracle in instantclient_19_5".)
>>
>> Generally fine, except that where the text contains Unicode characters 
>> beyond the Windows Latin1/CP512 character set, I'm not getting them.
>>
>> I'm not getting random garbage; I'm getting a sensible transliteration, e.g. 
>> "n" for "ň" (n-caron). So this isn't simply getting the bytes and 
>> misinterpreting them.
>>
>> Per 
>> https://community.oracle.com/tech/apps-infra/discussion/2424496/issue-with-character-set-conversion-using-oracle-odbc-client, 
>>
>>
>>> The conversion for the ODBC driver is performed by OCI to/from UTF-16 and
>>> it is independent of the NLS_LANG character set. If the C++ application is
>>> written in the ANSI mode (does not use wide character data types),
>>> Microsoft ODBC Manager will convert between the application and the Oracle
>>> ODBC driver, between system code page (Cp 1252) and UTF-16.
>>
>> The ODBC driver has a checkbox "Force SQL_WCHAR Support". I've tried both 
>> settings of this checkbox. Depending on the setting, I have to take a 
>> different approach to retrieving the data in order not to get garbage 
>> (passing a variable name to revDatabaseColumnNumbered and then using 
>> uniDecode). But when I don't get garbage, I also don't get the characters 
>> with diacritics - but I do get the correct character.
>>
>> Does anyone have experience of this? Do I need to modify the SQL Select 
>> statement in some way to get the correct version of the data?
>>
>> TIA,
>>
>> Ben
>>
>>
>> _______________________________________________
>> use-livecode mailing list
>> use-livecode at lists.runrev.com
>> Please visit this url to subscribe, unsubscribe and manage your subscription 
>> preferences:
>> http://lists.runrev.com/mailman/listinfo/use-livecode
> 
> 



More information about the use-livecode mailing list