Error (ORA-02074) when calling ORACLE PL/SQL procedure from MSACCESS [message #67565] |
Wed, 13 October 2004 08:30 |
FIorah
Messages: 3 Registered: October 2004
|
Junior Member |
|
|
Hi, I'm trying to launch an Oracle PL/SQL procedure from
MSACCESS but get the following Oracle errors :
ORA-02074: cannot SET NLS in a distributed transaction
ORA-06512: at "SYS.DBMS_SESSION", line 105
I use ODBC to connect to the Oracle db.
The procedure invoked contains a 'dbms_session.set_nls" which seems to be the reason of the failure but what i don't understand is that this error only occurs since upgrading from 8i to Oracle 9i on user's pc.
Any idea of how i can disable the 'distributed transaction' via ODBC ? i found suggestions on the web mentionning a distribtx=0 flag, but it seems to be only working with Oledb as i tested it in my connect string with no results. I could solve this by passing the nls_language parameter directly to the to_char function of my PL/SQL code, instead of altering the session via the dbms package, but i would prefer leaving the code as it was before (including the call to the dbms package to change the nls_language), and understand how to tell ODBC my transactions are not 'distibuted'
The ODBC driver provider is the Oracle 9.2's one (9.02.00.00)
Any help would be appreciated.
Thanks,
FioraH
|
|
|