The Omnidex Procedural Language interface works by PL/SQL
functions calling a set of C External routines which then
call the OmniAccess API. The provided set of PL/SQL functions
provide an interface to the Omnidex indexes primarily through
the oaexecsql api call which can process Omnidex SQL statements,
as well as Omnidex Query Language statements such as Qualify,
Join, and Export. All of the Omnidex SQL language, including
the extended functions, are available to the interface.
The general usage of the interface is to issue a connect
to an Omnidex Client Data source file that references an Omnidex
Environment Catalog file which is then used by DISC’s
Network Services to connect to the Omnidex Environment Catalog.
After a connection is established, there are two general
approaches for Oracle data retrieval.
- The first approach is the full SQL method which uses the
Omnidex SQL engine to optimize an SQL statement and fetch
the rows from Oracle and then returns the rows to the PL/SQL
interface.
- The second approach performs index only commands using
the Omnidex Query Language and the Oracle primary keys are
returned to the PL/SQL interface. These primary keys are
then used to retrieve the rows via Oracle’s normal
processing.
In order to use the interface, the following set up must
be performed.
- The Oracle Net Listener must be running and configured
to call externals.
This provides a level of isolation that Oracle requires
for external routines. Additionally, the Oracle environment
variable (EXTPROC_DLLS) must be set to either the name of
the Omnidex library (eg. $OMNIDEX_LIBS/libodxplora.so) or
it must be set to ANY to enable a process to call any external
procedures.
- The Omnidex Network Services Listener must be running.
This provides a level of isolation, similar to that of Oracle's,
that allows the OmniAccess API to connect back to Oracle
to retrieve records.
- A client Data source file must be created using the Windows
DSEDIT program or a sample file edited with any text based
editor if on Unix or Linux.
- A proper Omnidex set up including Environment Variables
must be set up.
- A DISC provided SQL script has to be run by SQLPlus to
create the PL/SQL package and other procedures used by the
PL/SQL interface. This script has to be modified to point
to the appropriate library.
Once the Omnidex PL/SQL interface is properly configured
and running, the Omnidex interface is available to any Oracle
user or process that has access rights to the package.
top
|