Original Publication Date: 1992-Oct-01
Included in the Prior Art Database: 2005-Mar-25
Boykin, JR: AUTHOR [+2]
A method is described to support retrieval of SQL table and view definitions in a heterogeneous, relational, database environment when the SQL language is not available.
A method is
described to support retrieval of SQL table
and view definitions in a heterogeneous, relational, database
environment when the SQL language is not available.
with the Federal Information Processing Standards
(FIPS) 127.1 SQL standard requires a FIPS Flagger to identify static
SQL outside the description of the FIPS 127.1 standard. In order for
the FIPS Flagger to perform the semantic analysis portion of its
processing for static, DML (SELECT, UPDATE, INSERT, DELETE), SQL
statements and detect semantic extensions; descriptions of tables,
views and their columns referenced in the static SQL statement are
required. Additionally, the FIPS Flagger requires an existence check
for a table when processing static, DDL, SQL statements.
is performed during the precompilation phase of
the OS/2* Database Manager. The precompiler invokes the FIPS Flagger
for each static SQL statement encountered during precompilation.
As the OS/2
Database Manager has major design points which do
not allow execution of SQL statements during precompilation, SQL
cannot be utilized to retrieve table, view and column definitions or
perform a table existence check as support for the FIPS Flagger.
The OS/2 Database
Manager also maintains, per table and view,
within the catalog table SYSIBM.SYSTABLES, a packed structure
describing the table or view and optionally, if the object is a view
a structure including the SELECT statement describing the view. In
order to support a heterogeneous environment with the upcoming AIX*
server coupled with OS/2 clients, these structures cannot be shipped
intact between server and client due to the need for translation of
character data and byte-reversal of numeric data.
In order to efficiently support requests for a
existence or a table description in the client-server environment,
OS/2 Database Manager's Application Remote Interface (DARI) is used
to minimize network traffic and support heterogeneous connections.
By using DARI, only a single round-trip on the network is required
for an entire table or view's description. This is in contrast to
the use of SQL which would require a FETCH to verify the table's
existence, whether it is a table or view and how many columns it
contained; followed by a FETCH per column in the table to gather
column data type, length and name; followed by a FETCH per portion of
a view description. If the connection to the database is local, DARI
simply forwards the request without network intervention.
both input and output SQL Descriptor Areas
(SQLDAs). These SQLDAs are used differently depending on the request
A. EXISTENCE CHECK
If the FIPS Flagger requests an existence check for a table or
view In support of Flagging for a DDL statement, the input SQLDA will
contain the following information:
SQLDA.SQLN - number of data elemen...