ibm-information-center/dist/eclipse/plugins/i5OS.ic.rzaii_5.4.0.1/rzaiimstexdb.htm

776 lines
41 KiB
HTML
Raw Permalink Normal View History

2024-04-02 14:02:31 +00:00
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE html
PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html lang="en-us" xml:lang="en-us">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<meta name="security" content="public" />
<meta name="Robots" content="index,follow" />
<meta http-equiv="PICS-Label" content='(PICS-1.1 "http://www.icra.org/ratingsv02.html" l gen true r (cz 1 lz 1 nz 1 oz 1 vz 1) "http://www.rsac.org/ratingsv01.html" l gen true r (n 0 s 0 v 0 l 0) "http://www.classify.org/safesurf/" l gen true r (SS~~000 1))' />
<meta name="DC.Type" content="task" />
<meta name="DC.Title" content="Database server" />
<meta name="abstract" content="Identify exit points for database server." />
<meta name="description" content="Identify exit points for database server." />
<meta name="DC.Relation" scheme="URI" content="rzaiimst35.htm" />
<meta name="copyright" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Rights.Owner" content="(C) Copyright IBM Corporation 1998, 2006" />
<meta name="DC.Format" content="XHTML" />
<meta name="DC.Identifier" content="rzaiimstexdb" />
<meta name="DC.Language" content="en-us" />
<!-- All rights reserved. Licensed Materials Property of IBM -->
<!-- US Government Users Restricted Rights -->
<!-- Use, duplication or disclosure restricted by -->
<!-- GSA ADP Schedule Contract with IBM Corp. -->
<link rel="stylesheet" type="text/css" href="./ibmdita.css" />
<link rel="stylesheet" type="text/css" href="./ic.css" />
<title>Database server</title>
</head>
<body id="rzaiimstexdb"><a name="rzaiimstexdb"><!-- --></a>
<!-- Java sync-link --><script language="Javascript" src="../rzahg/synch.js" type="text/javascript"></script>
<h1 class="topictitle1">Database server</h1>
<div><p>Identify exit points for database server.</p>
<div class="section">The database server has five different exit points defined:</div>
<ol><li class="stepexpand"><span>QIBM_QZDA_INIT</span> <ul><li>Called at server initiation</li>
</ul>
</li>
<li class="stepexpand"><span>QIBM_QZDA_NDB1</span> <ul><li>Called for native database requests</li>
</ul>
</li>
<li class="stepexpand"><span>QIBM_QZDA_SQL1</span> <ul><li>Called for SQL requests</li>
</ul>
</li>
<li class="stepexpand"><span>QIBM_QZDA_SQL2</span> <ul><li>Called for SQL requests</li>
</ul>
</li>
<li class="stepexpand"><span>QIBM_QZDA_ROI1</span> <ul><li>Called for retrieving object information requests and SQL catalog functions</li>
</ul>
</li>
</ol>
<div class="section"><p>The exit points for native database and retrieving object information
have two formats defined depending on the type of function requested.</p>
<p>The
QIBM_QZDA_INIT exit point is defined to run an exit program at server initiation.
If a program is defined for this exit point, it is called each time the database
server is initiated.</p>
<p><strong>Exit point QIBM_QZDA_INIT format ZDAI0100</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e67">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e69"> Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e71"> Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e73"> Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e76">Dec</th>
<th valign="top" width="10%" id="d0e78">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e67 d0e76 "> 0</td>
<td valign="top" width="10%" headers="d0e67 d0e78 "> 0</td>
<td valign="top" width="20%" headers="d0e69 "> CHAR(10)</td>
<td valign="top" width="20%" headers="d0e71 ">User profile name</td>
<td valign="top" width="40%" headers="d0e73 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e67 d0e76 "> 10</td>
<td valign="top" width="10%" headers="d0e67 d0e78 "> A</td>
<td valign="top" width="20%" headers="d0e69 "> CHAR(10)</td>
<td valign="top" width="20%" headers="d0e71 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e73 ">For this exit point, the value is *SQL.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e67 d0e76 "> 20</td>
<td valign="top" width="10%" headers="d0e67 d0e78 "> 14</td>
<td valign="top" width="20%" headers="d0e69 "> CHAR(8)</td>
<td valign="top" width="20%" headers="d0e71 ">Format name</td>
<td valign="top" width="40%" headers="d0e73 ">The user exit format name being used. For QIBM_QZDA_INIT the format
name is ZDAI0100.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e67 d0e76 "> 28</td>
<td valign="top" width="10%" headers="d0e67 d0e78 "> 1C</td>
<td valign="top" width="20%" headers="d0e69 "> BINARY(4)</td>
<td valign="top" width="20%" headers="d0e71 ">Requested function</td>
<td valign="top" width="40%" headers="d0e73 ">The function being performed <p>The only valid value for this exit
point is 0.</p>
</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e67 d0e69 d0e71 d0e73 d0e76 d0e78 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p id="rzaiimstexdb__SPTIDX251"><a name="rzaiimstexdb__SPTIDX251"><!-- --></a>The QIBM_QZDA_NDB1 exit point is defined to run
an exit program for native database requests for the database server. Two
formats are defined for this exit point. Format ZDAD0100 is used for the following
functions:</p>
<ul><li>Create source physical file</li>
<li>Create database file, based on existing file</li>
<li>Add, clear, delete database file member</li>
<li>Override database file</li>
<li>Delete database file override</li>
<li>Delete file</li>
</ul>
<p>Format ZDAD0200 is used when a request is received to add libraries
to the library list.</p>
<p><strong>Exit point QIBM_QZDA_NDB1 format ZDAD0100</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e160">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e162">Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e164">Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e166">Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e169">Dec</th>
<th valign="top" width="10%" id="d0e171">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e160 d0e169 ">0</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">0</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">User profile name</td>
<td valign="top" width="40%" headers="d0e166 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">10</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">A</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e166 ">For this exit point, the value is *NDB.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">20</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">14</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(8)</td>
<td valign="top" width="20%" headers="d0e164 ">Format name</td>
<td valign="top" width="40%" headers="d0e166 ">The user exit format name being used <p>For the following functions,
the format name is ZDAD0100.</p>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">28</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">1C</td>
<td valign="top" width="20%" headers="d0e162 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e164 ">Requested function</td>
<td valign="top" width="40%" headers="d0e166 ">The function being performed <p>This field contains one of the following:</p>
<ul><li><span class="uicontrol">X'00001800'</span> - Create source physical file</li>
<li><span class="uicontrol">X'00001801'</span> - Create database file</li>
<li><span class="uicontrol">X'00001802'</span> - Add database file member</li>
<li><span class="uicontrol">X'00001803'</span> - Clear database file member</li>
<li><span class="uicontrol">X'00001804'</span> - Delete database file member</li>
<li><span class="uicontrol">X'00001805'</span> - Override database file</li>
<li><span class="uicontrol">X'00001806'</span> - Delete database file override</li>
<li><span class="uicontrol">X'00001807'</span> - Create save file</li>
<li><span class="uicontrol">X'00001808'</span> - Clear save file</li>
<li><span class="uicontrol">X'00001809'</span> - Delete file</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">32</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">20</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(128)</td>
<td valign="top" width="20%" headers="d0e164 ">File name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the file used for the requested function</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">160</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">A0</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Library name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the library that contains the file</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">170</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">AA</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Member name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the member to be added, cleared, or deleted</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">180</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">B4</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Authority</td>
<td valign="top" width="40%" headers="d0e166 ">Authority to the created file</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">190</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">BE</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(128)</td>
<td valign="top" width="20%" headers="d0e164 ">Based on file name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the file to use when creating a file based on an existing file</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">318</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">13E</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Based on library name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the library containing the based on file</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">328</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">148</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Override file name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the file to be overridden</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">338</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">152</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Override library name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the library that contains the file to be overridden</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e160 d0e169 ">348</td>
<td valign="top" width="10%" headers="d0e160 d0e171 ">15C</td>
<td valign="top" width="20%" headers="d0e162 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e164 ">Override member name</td>
<td valign="top" width="40%" headers="d0e166 ">Name of the member to be overridden</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e160 d0e162 d0e164 d0e166 d0e169 d0e171 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p id="rzaiimstexdb__SPTIDX252"><a name="rzaiimstexdb__SPTIDX252"><!-- --></a><strong>Exit point QIBM_QZDA_NDB1 format ZDAD0200</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e378">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e380">Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e382">Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e384">Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e387">Dec</th>
<th valign="top" width="10%" id="d0e389">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e378 d0e387 ">0</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">0</td>
<td valign="top" width="20%" headers="d0e380 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e382 ">User profile name</td>
<td valign="top" width="40%" headers="d0e384 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e378 d0e387 ">10</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">A</td>
<td valign="top" width="20%" headers="d0e380 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e382 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e384 ">For this exit point, the value is *NDB.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e378 d0e387 ">20</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">14</td>
<td valign="top" width="20%" headers="d0e380 ">CHAR(8)</td>
<td valign="top" width="20%" headers="d0e382 ">Format name</td>
<td valign="top" width="40%" headers="d0e384 ">The user exit format name being used. For the add to library list function,
the format name is ZDAD0200.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e378 d0e387 ">28</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">1C</td>
<td valign="top" width="20%" headers="d0e380 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e382 ">Requested function</td>
<td valign="top" width="40%" headers="d0e384 ">The function being performed <p><span class="uicontrol">X'0000180C'</span> -
Add library list</p>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e378 d0e387 ">32</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">20</td>
<td valign="top" width="20%" headers="d0e380 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e382 ">Number of libraries</td>
<td valign="top" width="40%" headers="d0e384 ">The number of libraries (the next field)</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e378 d0e387 ">36</td>
<td valign="top" width="10%" headers="d0e378 d0e389 ">24</td>
<td valign="top" width="20%" headers="d0e380 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e382 ">Library name</td>
<td valign="top" width="40%" headers="d0e384 ">The library names for each library</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e378 d0e380 d0e382 d0e384 d0e387 d0e389 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p id="rzaiimstexdb__SPTIDX253"><a name="rzaiimstexdb__SPTIDX253"><!-- --></a>The QIBM_QZDA_SQL1 exit point is defined to run
an exit point for certain SQL requests that are received for the database
server. Only one format is defined for this exit point. The following are
the functions that cause the exit program to be called:</p>
<ul><li>Prepare</li>
<li>Open</li>
<li>Execute</li>
<li>Connect</li>
<li>Create package</li>
<li>Clear package</li>
<li>Delete package</li>
<li>Stream fetch</li>
<li>Execute immediate</li>
<li>Prepare and describe</li>
<li>Prepare and execute or prepare and open</li>
<li>Open and fetch</li>
<li>Execute or open</li>
<li>Return package information</li>
</ul>
<p><strong>Exit point QIBM_QZDA_SQL1 format ZDAQ0100</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e509">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e511">Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e513">Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e515">Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e518">Dec</th>
<th valign="top" width="10%" id="d0e520">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e509 d0e518 ">0</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">0</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e513 ">User profile name</td>
<td valign="top" width="40%" headers="d0e515 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">10</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">A</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e513 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e515 ">For this exit point, the value is *SQLSRV.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">20</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">14</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(8)</td>
<td valign="top" width="20%" headers="d0e513 ">Format name</td>
<td valign="top" width="40%" headers="d0e515 ">The user exit format name being used. For QIBM_QZDA_SQL1, the format
name is ZDAQ0100.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">28</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">1C</td>
<td valign="top" width="20%" headers="d0e511 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e513 ">Requested function</td>
<td valign="top" width="40%" headers="d0e515 ">The function being performed <p>This field contains one of the following:</p>
<ul><li><span class="uicontrol">X'00001800'</span> - Prepare</li>
<li><span class="uicontrol">X'00001803'</span> - Prepare and describe</li>
<li><span class="uicontrol">X'00001804'</span> - Open/Describe</li>
<li><span class="uicontrol">X'00001805'</span> - Execute</li>
<li><span class="uicontrol">X'00001806'</span> - Execute immediate</li>
<li><span class="uicontrol">X'00001809'</span> - Connect</li>
<li><span class="uicontrol">X'0000180C'</span> - Stream fetch</li>
<li><span class="uicontrol">X'0000180D'</span> - Prepare and execute</li>
<li><span class="uicontrol">X'0000180E'</span> - Open and fetch</li>
<li><span class="uicontrol">X'0000180F'</span> - Create package</li>
<li><span class="uicontrol">X'00001810'</span> - Clear package</li>
<li><span class="uicontrol">X'00001811'</span> - Delete package</li>
<li><span class="uicontrol">X'00001812'</span> - Execute or open</li>
<li><span class="uicontrol">X'00001815'</span> - Return package information</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">32</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">20</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(18)</td>
<td valign="top" width="20%" headers="d0e513 ">Statement name</td>
<td valign="top" width="40%" headers="d0e515 ">Name of the statement used for the prepare or execute functions</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">50</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">32</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(18)</td>
<td valign="top" width="20%" headers="d0e513 ">Cursor name</td>
<td valign="top" width="40%" headers="d0e515 ">Name of the cursor used for the open function</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">68</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">44</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(2)</td>
<td valign="top" width="20%" headers="d0e513 ">Prepare option</td>
<td valign="top" width="40%" headers="d0e515 ">Option used for the prepare function</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">70</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">46</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(2)</td>
<td valign="top" width="20%" headers="d0e513 ">Open attributes</td>
<td valign="top" width="40%" headers="d0e515 ">Option used for the open function</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">72</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">48</td>
<td valign="top" width="20%" headers="d0e511 "> CHAR(10)</td>
<td valign="top" width="20%" headers="d0e513 ">Extended dynamic package name</td>
<td valign="top" width="40%" headers="d0e515 ">Name of the extended dynamic SQL package</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">82</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">52</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e513 ">Package library name</td>
<td valign="top" width="40%" headers="d0e515 ">Name of the library for extended dynamic SQL package.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">92</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">5C</td>
<td valign="top" width="20%" headers="d0e511 ">BINARY(2)</td>
<td valign="top" width="20%" headers="d0e513 ">DRDA<sup>®</sup> indicator</td>
<td valign="top" width="40%" headers="d0e515 "> <ul><li><span class="uicontrol">0</span> - Connected to local RDB</li>
<li><span class="uicontrol">1</span> - Connected to remote RDB</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">94</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">5E</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(1)</td>
<td valign="top" width="20%" headers="d0e513 ">Commitment control level</td>
<td valign="top" width="40%" headers="d0e515 "> <ul><li><span class="uicontrol">'A'</span> - Commit *ALL</li>
<li><span class="uicontrol">'C'</span> - Commit *CHANGE</li>
<li><span class="uicontrol">'N'</span> - Commit *NONE</li>
<li><span class="uicontrol">'S'</span> - Commit *CS (cursor stability)</li>
<li><span class="uicontrol">'L'</span> - Commit *RR (repeatable read)</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e509 d0e518 ">95</td>
<td valign="top" width="10%" headers="d0e509 d0e520 ">5F</td>
<td valign="top" width="20%" headers="d0e511 ">CHAR(512)</td>
<td valign="top" width="20%" headers="d0e513 ">First 512 bytes of the SQL statement text</td>
<td valign="top" width="40%" headers="d0e515 ">First 512 bytes of the SQL statement</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e509 d0e511 d0e513 d0e515 d0e518 d0e520 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p>The QIBM_QZDA_SQL2 exit point is defined to run an exit point for
certain SQL requests that are received for the database server. The QIBM_QZDA_SQL2
exit point takes precedence over the QIBM_QZDA_SQL1 exit point. If a program
is registered for the QIBM_QZDA_SQL2 exit point, it will be called and a program
for the QIBM_QZDA_SQL1 exit point will not be called. The following are the
functions that cause the exit program to be called:</p>
<ul><li>Prepare</li>
<li>Open</li>
<li>Execute</li>
<li>Connect</li>
<li>Create package</li>
<li>Clear package</li>
<li>Delete package</li>
<li>Stream fetch</li>
<li>Execute immediate</li>
<li>Prepare and describe</li>
<li>Prepare and execute or prepare and open</li>
<li>Open and fetch</li>
<li>Execute or open</li>
<li>Return package information</li>
</ul>
<p><strong>Table A-6. Exit point QIBM_QZDA_SQL2 format ZDAQ0200</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><tbody><tr><td valign="top" width="10%">0</td>
<td valign="top" width="10%">0</td>
<td valign="top" width="20%">CHAR(10)</td>
<td valign="top" width="20%">User profile name</td>
<td valign="top" width="40%">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%">10</td>
<td valign="top" width="10%">A</td>
<td valign="top" width="20%">CHAR(10)</td>
<td valign="top" width="20%">Server identifier</td>
<td valign="top" width="40%">For this exit point, the value is *SQLSRV.</td>
</tr>
<tr><td valign="top" width="10%">20</td>
<td valign="top" width="10%">14</td>
<td valign="top" width="20%">CHAR(8)</td>
<td valign="top" width="20%">Format name</td>
<td valign="top" width="40%">The user exit format name being used. For QIBM_QZDA_SQL2, the format
name is ZDAQ0200.</td>
</tr>
<tr><td valign="top" width="10%">28</td>
<td valign="top" width="10%">1C</td>
<td valign="top" width="20%">BINARY(4)</td>
<td valign="top" width="20%">Requested function</td>
<td valign="top" width="40%">The function being performed <p>This field contains one of the following:</p>
<ul><li><span class="uicontrol">X'00001800'</span> - Prepare</li>
<li><span class="uicontrol">X'00001803'</span> - Prepare and describe</li>
<li><span class="uicontrol">X'00001804'</span> - Open/Describe</li>
<li><span class="uicontrol">X'00001805'</span> - Execute</li>
<li><span class="uicontrol">X'00001806'</span> - Execute immediate</li>
<li><span class="uicontrol">X'00001809'</span> - Connect</li>
<li><span class="uicontrol">X'0000180C'</span> - Stream fetch</li>
<li><span class="uicontrol">X'0000180D'</span> - Prepare and execute</li>
<li><span class="uicontrol">X'0000180E'</span> - Open and fetch</li>
<li><span class="uicontrol">X'0000180F'</span> - Create package</li>
<li><span class="uicontrol">X'00001810'</span> - Clear package</li>
<li><span class="uicontrol">X'00001811'</span> - Delete package</li>
<li><span class="uicontrol">X'00001812'</span> - Execute or open</li>
<li><span class="uicontrol">X'00001815'</span> - Return package information</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%">32</td>
<td valign="top" width="10%">20</td>
<td valign="top" width="20%">CHAR(18)</td>
<td valign="top" width="20%">Statement name</td>
<td valign="top" width="40%">Name of the statement used for the prepare or execute functions</td>
</tr>
<tr><td valign="top" width="10%">50</td>
<td valign="top" width="10%">32</td>
<td valign="top" width="20%">CHAR(18)</td>
<td valign="top" width="20%">Cursor name</td>
<td valign="top" width="40%">Name of the cursor used for the open function</td>
</tr>
<tr><td valign="top" width="10%">68</td>
<td valign="top" width="10%">44</td>
<td valign="top" width="20%">CHAR(2)</td>
<td valign="top" width="20%">Prepare option</td>
<td valign="top" width="40%">Option used for the prepare function</td>
</tr>
<tr><td valign="top" width="10%">70</td>
<td valign="top" width="10%">46</td>
<td valign="top" width="20%">CHAR(2)</td>
<td valign="top" width="20%">Open attributes</td>
<td valign="top" width="40%">Option used for the open function</td>
</tr>
<tr><td valign="top" width="10%">72</td>
<td valign="top" width="10%">48</td>
<td valign="top" width="20%">CHAR(10)</td>
<td valign="top" width="20%">Extended dynamic package name</td>
<td valign="top" width="40%">Name of the extended dynamic SQL package</td>
</tr>
<tr><td valign="top" width="10%">82</td>
<td valign="top" width="10%">52</td>
<td valign="top" width="20%">CHAR(10)</td>
<td valign="top" width="20%">Package library name</td>
<td valign="top" width="40%">Name of the library for extended dynamic SQL package.</td>
</tr>
<tr><td valign="top" width="10%">92</td>
<td valign="top" width="10%">5C</td>
<td valign="top" width="20%">BINARY(2)</td>
<td valign="top" width="20%">DRDA indicator</td>
<td valign="top" width="40%"> <ul><li><span class="uicontrol">0</span> - Connected to local RDB</li>
<li><span class="uicontrol">1</span> - Connected to remote RDB</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%">94</td>
<td valign="top" width="10%">5E</td>
<td valign="top" width="20%">CHAR(1)</td>
<td valign="top" width="20%">Commitment control level</td>
<td valign="top" width="40%"> <ul><li><span class="uicontrol">'A'</span> - Commit *ALL</li>
<li><span class="uicontrol">'C'</span> - Commit *CHANGE</li>
<li><span class="uicontrol">'N'</span> - Commit *NONE</li>
<li><span class="uicontrol">'S'</span> - Commit *CS (cursor stability)</li>
<li><span class="uicontrol">'L'</span> - Commit *RR (repeatable read)</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%">95</td>
<td valign="top" width="10%">5F</td>
<td valign="top" width="20%">CHAR(10)</td>
<td valign="top" width="20%">Default SQL collection</td>
<td valign="top" width="40%">Name of the default SQL collection used by the iSeries™ Database Server</td>
</tr>
<tr><td valign="top" width="10%">105</td>
<td valign="top" width="10%">69</td>
<td valign="top" width="20%">CHAR(129)</td>
<td valign="top" width="20%">Reserved</td>
<td valign="top" width="40%">Reserved for future parameters</td>
</tr>
<tr><td valign="top" width="10%">234</td>
<td valign="top" width="10%">EA</td>
<td valign="top" width="20%">BINARY(4)</td>
<td valign="top" width="20%">SQL statement text length</td>
<td valign="top" width="40%">Length of SQL statement text in the field that follows. The length
can be a maximum of 2 MB (2,097,152 bytes). </td>
</tr>
<tr><td valign="top" width="10%">238</td>
<td valign="top" width="10%">EE</td>
<td valign="top" width="20%">CHAR(*)</td>
<td valign="top" width="20%">SQL statement text</td>
<td valign="top" width="40%">Entire SQL statement</td>
</tr>
<tr><td colspan="5" valign="top"><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p>The QIBM_QZDA_ROI1 exit point is defined to run an exit program
for the requests that retrieve information about certain objects for the database
server. It is also used for SQL catalog functions.</p>
<p>This exit point has
two formats defined. These formats are described below.</p>
<p>Format ZDAR0100
is used for requests to retrieve information for the following objects:</p>
<ul><li>Library (or collection)</li>
<li>File (or table)</li>
<li>Field (or column)</li>
<li>Index</li>
<li>Relational database (or RDB)</li>
<li>SQL package</li>
<li>SQL package statement</li>
<li>File member</li>
<li>Record format</li>
<li>Special columns</li>
</ul>
<p>Format ZDAR0200 is used for requests to retrieve information for the
following objects:</p>
<ul><li>Foreign keys</li>
<li>Primary keys</li>
</ul>
<p><strong>Exit point QIBM_QZDA_ROI1 format ZDAR0100</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e1127">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e1129">Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e1131">Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e1133">Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e1136">Dec</th>
<th valign="top" width="10%" id="d0e1138">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">0</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">0</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1131 ">User profile name</td>
<td valign="top" width="40%" headers="d0e1133 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">10</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">A</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1131 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e1133 ">For the database server, the value is *RTVOBJINF.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">20</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">14</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(8)</td>
<td valign="top" width="20%" headers="d0e1131 ">Format name</td>
<td valign="top" width="40%" headers="d0e1133 ">The user exit format name being used. For the following functions,
the format name is ZDAR0100.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">28</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">1C</td>
<td valign="top" width="20%" headers="d0e1129 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e1131 ">Requested function</td>
<td valign="top" width="40%" headers="d0e1133 ">The function being performed <p>This field contains one of the following:</p>
<ul><li><span class="uicontrol">X'00001800'</span> - Retrieve library information</li>
<li><span class="uicontrol">X'00001801'</span> - Retrieve relational database information</li>
<li><span class="uicontrol">X'00001802'</span> - Retrieve SQL package information</li>
<li><span class="uicontrol">X'00001803'</span> - Retrieve SQL package statement</li>
<li><span class="uicontrol">X'00001804'</span> - Retrieve file information</li>
<li><span class="uicontrol">X'00001805'</span> - Retrieve file member information</li>
<li><span class="uicontrol">X'00001806'</span> - Retrieve record format information</li>
<li><span class="uicontrol">X'00001807'</span> - Retrieve field information</li>
<li><span class="uicontrol">X'00001808'</span> - Retrieve index information</li>
<li><span class="uicontrol">X'0000180B'</span> - Retrieve special column information</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">32</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">20</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(20)</td>
<td valign="top" width="20%" headers="d0e1131 ">Library name</td>
<td valign="top" width="40%" headers="d0e1133 ">The library or search pattern used when retrieving information about
libraries, packages, package statements, files, members, record formats, fields,
indexes, and special columns</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">52</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">34</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(36)</td>
<td valign="top" width="20%" headers="d0e1131 ">Relational database name</td>
<td valign="top" width="40%" headers="d0e1133 ">The relational database name or search pattern used to retrieve RDB
information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">88</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">58</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(20)</td>
<td valign="top" width="20%" headers="d0e1131 ">Package name</td>
<td valign="top" width="40%" headers="d0e1133 ">The package name or search pattern used to retrieve package or package
statement information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">108</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">6C</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(256)</td>
<td valign="top" width="20%" headers="d0e1131 ">File name (SQL alias name)</td>
<td valign="top" width="40%" headers="d0e1133 ">The file name or search pattern used to retrieve file, member, record
format, field, index, or special column information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">364</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">16C</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(20)</td>
<td valign="top" width="20%" headers="d0e1131 ">Member name</td>
<td valign="top" width="40%" headers="d0e1133 ">The member name or search pattern used to retrieve file member information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1127 d0e1136 ">384</td>
<td valign="top" width="10%" headers="d0e1127 d0e1138 ">180</td>
<td valign="top" width="20%" headers="d0e1129 ">CHAR(20)</td>
<td valign="top" width="20%" headers="d0e1131 ">Format name</td>
<td valign="top" width="40%" headers="d0e1133 ">The format name or search pattern used to retrieve record format information</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e1127 d0e1129 d0e1131 d0e1133 d0e1136 d0e1138 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
<p id="rzaiimstexdb__SPTIDX256"><a name="rzaiimstexdb__SPTIDX256"><!-- --></a><strong>Exit point QIBM_QZDA_ROI1 format ZDAR0200</strong></p>
<div class="tablenoborder"><table cellpadding="4" cellspacing="0" summary="" frame="border" border="1" rules="all"><thead align="left"><tr><th colspan="2" valign="top" id="d0e1310">Offset</th>
<th rowspan="2" valign="top" width="20%" id="d0e1312">Type</th>
<th rowspan="2" valign="top" width="20%" id="d0e1314">Field</th>
<th rowspan="2" valign="top" width="40%" id="d0e1316">Description</th>
</tr>
<tr><th valign="top" width="10%" id="d0e1319">Dec</th>
<th valign="top" width="10%" id="d0e1321">Hex</th>
</tr>
</thead>
<tbody><tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">0</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">0</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1314 ">User profile name</td>
<td valign="top" width="40%" headers="d0e1316 ">The name of the user profile that is calling the server</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">10</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">A</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1314 ">Server identifier</td>
<td valign="top" width="40%" headers="d0e1316 ">For the database server, the value is *RTVOBJINF.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">20</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">14</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(8)</td>
<td valign="top" width="20%" headers="d0e1314 ">Format name</td>
<td valign="top" width="40%" headers="d0e1316 ">The user exit format name being used. For the following functions,
the format name is ZDAR0200.</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">28</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">1C</td>
<td valign="top" width="20%" headers="d0e1312 ">BINARY(4)</td>
<td valign="top" width="20%" headers="d0e1314 ">Requested function</td>
<td valign="top" width="40%" headers="d0e1316 ">The function being performed <p>This field contains one of the following:</p>
<ul><li><span class="uicontrol">X'00001809'</span> - Retrieve foreign key information</li>
<li><span class="uicontrol">X'0000180A'</span> - Retrieve primary key information</li>
</ul>
</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">32</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">20</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1314 ">Primary key table library name</td>
<td valign="top" width="40%" headers="d0e1316 ">The name of the library that contains the primary key table used when
retrieving primary and foreign key information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">42</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">2A</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(128)</td>
<td valign="top" width="20%" headers="d0e1314 ">Primary key table name (alias name)</td>
<td valign="top" width="40%" headers="d0e1316 ">The name of the table that contains the primary key used when retrieving
primary or foreign key information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">170</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">AA</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(10)</td>
<td valign="top" width="20%" headers="d0e1314 ">Foreign key table library name</td>
<td valign="top" width="40%" headers="d0e1316 ">The name of the library that contains the foreign key table used when
retrieving foreign key information</td>
</tr>
<tr><td valign="top" width="10%" headers="d0e1310 d0e1319 ">180</td>
<td valign="top" width="10%" headers="d0e1310 d0e1321 ">64</td>
<td valign="top" width="20%" headers="d0e1312 ">CHAR(128)</td>
<td valign="top" width="20%" headers="d0e1314 ">Foreign key table name (alias name)</td>
<td valign="top" width="40%" headers="d0e1316 ">The name of the table that contains the foreign key used when retrieving
foreign key information</td>
</tr>
<tr><td colspan="5" valign="top" headers="d0e1310 d0e1312 d0e1314 d0e1316 d0e1319 d0e1321 "><div class="note"><span class="notetitle">Note:</span> This format is defined by member
EZDAEP in files H, QRPGSRC, QRPGLESRC, QLBLSRC and QCBLLESRC in library QSYSINC.</div>
</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
<div>
<div class="familylinks">
<div class="parentlink"><strong>Parent topic:</strong> <a href="rzaiimst35.htm" title="Identify exit points for the servers.">Exit program parameters</a></div>
</div>
</div>
</body>
</html>