Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Discussion of open issues, suggestions and bugs regarding usage of dbExpress drivers for Oracle in Delphi and C++Builder
AlexP
Devart Team
Posts: 5530
Joined: Tue 10 Aug 2010 11:35

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by AlexP » Fri 18 Jan 2013 11:30

hello,

Please specify the exact error you get when trying to connect in the Direct mode and the exact Delphi version.

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Tue 22 Jan 2013 16:42

Hi Devart,

In direct mode works, but I can't use this mode, I need to use the OCI mode.

And in the OCI mode the exception is:

'Could not parse the GetProcedureParameters metadata command. Problem found near: /. Original query: GetProcedureParameters 'DataBase'. 'User_Name' . sp_test .'

I'm using Delphi XE3 Version 17.0.4625.53395.

If you need any more information, just ask...

Thanks,
Peter.

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

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by AlexP » Wed 23 Jan 2013 13:09

Hello,

You are using RAD Studio XE3 without installed Update 1 required by our drivers. Please install this update and try once more. You can download Update 1 for XE3 from the Embarcadero official site: http://cc.embarcadero.com/item/29202

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Wed 23 Jan 2013 19:18

Hi Devart,

I've instaled de Update 1 for RAD XE3 and tried to execute the proc sp_test but the problem continue.

'Could not parse the GetProcedureParameters metadata command. Problem found near: /. Original query: GetProcedureParameters 'DataBase'. 'User_Name' . sp_test .'

I'm using now Delphi XE3 Version 17.0.4723.55752,
Version 6.1.2 of your driver dbexpoda40.dll 24/12/2012 12:17.

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

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by AlexP » Thu 24 Jan 2013 13:16

Hello,

We checked both my and your code on the following configuration (everything is on one PC):

Oracle Database 10g Express Edition 10.2.0.1.0
Oracle Client 10g Express Edition 10.2.0.1.0
dbExpress Driver for Oracle 6.1.2
Embarcadero Delphi XE3 Architect Update 1 Version 17.0.4723.55752
Windows XP Build: 2600 Service Pack 3

and couldn't reproduce the error. If your configuration is different, please specify the differences, and we will try to reproduce the problem once more.

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Thu 24 Jan 2013 13:23

Hi Devart,

I've tested the sp_test with Direct mode and raised this exception:

'Could not parse the GetProcedureParameters metadata command. Problem found near: :. Original query: GetProcedureParameters 'DataBase'. 'User_Name' . sp_test .'

The diference is:

Code: Select all

    
    SQLConnection.ConnectionName := 'Devart Oracle Direct';
    SQLConnection.DriverName := 'DevartOracleDirect';
    SQLConnection.LoginPrompt := False;
    SQLConnection.Params.Values['DriverName'] := 'DevartOracleDirect';
    
    This way raise the excetion
    SQLConnection.Params.Values['DataBase'] := 'host:port:sid';

    This way works
    SQLConnection.Params.Values['HostName'] := 'host:port:sid';

    SQLConnection.Params.Values['User_Name'] := 'login';
    SQLConnection.Params.Values['Password'] := 'passwd';

Then I tested with OCI mode:

'Could not parse the GetProcedureParameters metadata command. Problem found near: /. Original query: GetProcedureParameters 'DataBase'. 'User_Name' . sp_test .'

Code: Select all

    
    SQLConnection.ConnectionName := 'Devart Oracle';
    SQLConnection.DriverName := 'DevartOracle';
    SQLConnection.LoginPrompt := False;
    SQLConnection.Params.Values['DriverName'] := 'DevartOracle';
    
    By the way, I can connect, only if do this

    This way raise the excetion
    SQLConnection.Params.Values['DataBase'] := 'host/sid';

    This way works
    SQLConnection.Params.Values['HostName'] := 'host/sid';

    SQLConnection.Params.Values['User_Name'] := 'login';
    SQLConnection.Params.Values['Password'] := 'passwd';
So, if I connect with OCI mode and use the 'DataBase' param, because of the / the exception is raised?

If I use the 'HostName' param it works.

There are anyway to make it work using the DataBase param?
Last edited by PeterWK on Thu 24 Jan 2013 17:20, edited 2 times in total.

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Thu 24 Jan 2013 14:00

Hi,

I've just tested in a computer that I didn't installed your driver and I can't connect using the HostName param only with the Database param, but this way I can't execute StoredProc.

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Mon 28 Jan 2013 12:12

Hello Devart,

My configuration is:

Oracle SQL Developer (IDE - 3.1.07.42).
Oracle Database 10g Express Edition Release 10.2.0.1.0 - Production.
dbExpress Driver for Oracle 6.1.2
Embarcadero Delphi XE3 Enterprise Update 1 Version 17.0.4723.55752
Windows 8 Pro 64 bits

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

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by AlexP » Mon 28 Jan 2013 16:20

hello,

In addition, please specify the type of the application you create - 32bit or 64bit, and Oracle - 32bit or 64-bit?

PeterWK
Posts: 15
Joined: Tue 08 Jan 2013 19:21

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by PeterWK » Thu 31 Jan 2013 10:22

Hi Devart,

Application 32 bits
Oracle 32 bist and 64bits.

BenW
Posts: 9
Joined: Thu 14 May 2009 04:35

Re: Could not parse the GetProcedureParameters metadata command on TSQLStoredProc

Post by BenW » Tue 25 Feb 2014 21:14

Hi,

We are using Delphi XE2 with dbexpoda40.dll version 6.2.3.0 and recently had the same problem with TSQLStoredProc and 'Could not parse the GetProcedureParameters metadata command' error.

Just like PeterWK we also connect via setting the Database param and not HostName.

Fortunately for us we had a machine where the error wasn't present which allowed us to compare it with the machine that was experiencing the error.

Comparing the Delphi Lib folder (C:\Program Files (x86)\Embarcadero\RAD Studio\9.0\lib\win32\release) of the two machines revealed that the error free machine contained the unit "DBXDevartOracle.dcu" where as the machine with the error did not have this unit. Copying the dcu across to the machine with the error resolved the problem.

Hopefully this helps others experiencing the same issue. I'm not sure if the DBXDevartOracle.dcu unit has to specifically be in the Lib folder or not as I notice it's also present in the DbxOda installation folder. Perhaps adding the DbxOda installation folder to the Library Path could also fix the issue.


[EDIT]

After posting the above a few more details have come to light. If we use dbexpoda40.dll (ver 6.2.3.0) together with the DBXDevartOracle.dcu it installs, it fails with the Metadata error. BUT If we use dbexpoda40.dll (ver 6.2.3.0) with the DBXDevartOracle.dcu from version 5.1.3.0 it works.
  • v6 dll + v5 dcu = SUCCESS
    v6 dll + v6 dcu = ERROR

Post Reply