Param name in TOraStoredProc

Discussion of open issues, suggestions and bugs regarding ODAC (Oracle Data Access Components) for Delphi, C++Builder, Lazarus (and FPC)
Post Reply
JFlo
Posts: 9
Joined: Tue 23 Nov 2004 13:31

Param name in TOraStoredProc

Post by JFlo » Thu 02 May 2013 09:36

After migration to ODAC 8.6 from 7.20 I encounter a strange behavior: 1. call to a stored proc with parameters using the following code sniplet
oraProc->StoredProcName = "TEST.TESTPROC";
oraProc->Params->Clear();
oraProc->Params->CreateParam(ftString,"name",ptInput);
oraProc->Params->ParamValues["name"] = "ABC";
oraProc->ExecProc();
oraProc->Close();
executes correctly (in dbMonitor I see the parameter "name"="ABC").
A 2. call to the same code returns an error and in dbMonitor I see the parameter "NAME"=<null> since it is now UPPERCASE.

AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: Param name in TOraStoredProc

Post by AlexP » Tue 07 May 2013 15:05

Hello,

Please try to reproduce the problem on the latest ODAC version 9.0.1. If the problem can be reproduced on it, provide the script for creating your procedure.

JFlo
Posts: 9
Joined: Tue 23 Nov 2004 13:31

Re: Param name in TOraStoredProc

Post by JFlo » Mon 13 May 2013 06:43

Hello

I found a strange workaround to solve the problem:

After changing:
oraProc->ExecProc();
oraProc->Close();
to:
oraProc->Prepare();
oraProc->ExecProc();

the code worked in 7.20 and in 8.6 successfully again.
I will try it with 9.0.1 as soon as I have it installed.

Post Reply