Bud Swell
2006-04-03 00:51:14 UTC
Hi,
I'm thinking the answer to this is probably no, but anyway...
We have a big perl job sitting on top of an oracle database (accessed
via DBI DBD::Oracle). Some of the functionality we are implementing as
XS routines. Now I would really like to implment some XS routines
which interact with the database (using oracle OCI library which is
what DBD::Oracle does), but to do this we need to be able to some how
extract the OCI handles from the DBI object.
Is this possible?
Even if possible is it a good idea?
By bypassing DBI (and DBD::Oracle) would I be corrupting some of its
state stuff? (other perl code would still be using them normally).
Have looked around and not found anyone talking about this. I know I
can call back the perl DBI functions from XS for the database routines,
but this is not ideal.
I'm thinking the answer to this is probably no, but anyway...
We have a big perl job sitting on top of an oracle database (accessed
via DBI DBD::Oracle). Some of the functionality we are implementing as
XS routines. Now I would really like to implment some XS routines
which interact with the database (using oracle OCI library which is
what DBD::Oracle does), but to do this we need to be able to some how
extract the OCI handles from the DBI object.
Is this possible?
Even if possible is it a good idea?
By bypassing DBI (and DBD::Oracle) would I be corrupting some of its
state stuff? (other perl code would still be using them normally).
Have looked around and not found anyone talking about this. I know I
can call back the perl DBI functions from XS for the database routines,
but this is not ideal.