Home » RDBMS Server » Networking and Gateways » Error (ORA-02074) when calling ORACLE PL/SQL procedure from MSACCESS
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
Previous Topic: newbie here, listener problem?
Next Topic: 9i listener/8i external procedures
Goto Forum:
  


Current Time: Fri May 03 00:11:41 CDT 2024