OraCall.OCIVersion?
OraCall.OCIVersion?
ODAC : 9.6.21
In previous earlier versions of ODAC, there were routines for reading the OCI version
OraCall.OCIVersion and OraCall.OCIVersionSt
These no longer work. Where are these routines now or how do you achieve their equivalent?
In previous earlier versions of ODAC, there were routines for reading the OCI version
OraCall.OCIVersion and OraCall.OCIVersionSt
These no longer work. Where are these routines now or how do you achieve their equivalent?
Re: OraCall.OCIVersion?
Hello,
This data may be retrieved from the TOracleHome class:
This data may be retrieved from the TOracleHome class:
Code: Select all
OraSession.Home.OCIVersionSt
OraSession.Home.OCIVersion
Re: OraCall.OCIVersion?
Hello,
In the ODAC 9.6.22 Help file the "Home" property of TOraSession is marked as deprecated and Not Supported.
This property seems to be considered as not important by the Devart developer team, as its interface was successively changed without any care with active applications.
How can I get the OCIVersionSt value using the new TOraSession v 9.6.22 structure, without using any deprecated property?
In the ODAC 9.6.22 Help file the "Home" property of TOraSession is marked as deprecated and Not Supported.
This property seems to be considered as not important by the Devart developer team, as its interface was successively changed without any care with active applications.
How can I get the OCIVersionSt value using the new TOraSession v 9.6.22 structure, without using any deprecated property?
Re: OraCall.OCIVersion?
Hello,
A workaround can be made by running the sql bellow:
I do not know if it works on versions of Oracle database bellow 10g, but it is a good solution to become independent of ODAC implementations.
Best regards,
A workaround can be made by running the sql bellow:
Code: Select all
SELECT
(SELECT
DISTINCT CLIENT_VERSION
FROM
v$session_connect_info
WHERE
sid = sys_context('USERENV', 'SID')) AS CLIENT_VERSION,
(SELECT SUBSTR(banner, INSTR(banner,'Release')+8, INSTR(banner,'-') - (INSTR(banner,'Release')+9))
FROM V$VERSION
WHERE banner LIKE '%Database%' ) AS dbversion
FROM sys.dual
Best regards,
Re: OraCall.OCIVersion?
The variables in the OraCall method are obsolete. We will correct this help section.
We detect the client version not using a query, but using Oracle API OCIClientVersion.
We detect the client version not using a query, but using Oracle API OCIClientVersion.
Re: OraCall.OCIVersion?
Hello Alex,
Is there any way of getting the OCIClientVersion using TOraSession properties and methods on VCL ODAC version 9.6.22 ?
The query to Oracle database I have suggested only works on Oracle database of version 10g or greater.
Thank you very much.
Best regards.
Jayme Jeffman
Is there any way of getting the OCIClientVersion using TOraSession properties and methods on VCL ODAC version 9.6.22 ?
The query to Oracle database I have suggested only works on Oracle database of version 10g or greater.
Thank you very much.
Best regards.
Jayme Jeffman
Re: OraCall.OCIVersion?
You can retrieve the client version in the following way:
Code: Select all
OraSession1.Home.OCIVersionSt //string
OraSession1.Home.OCIVersion //integer