Sophie

Sophie

distrib > Mandriva > current > i586 > media > main-updates > by-pkgid > 7c859c6f61469ed11e2ab179848b0178 > files > 279

libapr-util-devel-1.4.1-0.1mdv2010.2.i586.rpm

<!-- This comment will put IE 6, 7 and 8 in quirks mode -->
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/xhtml;charset=UTF-8"/>
<title>Apache Portable Runtime Utility Library: apr_dbd_driver_t Struct Reference</title>
<link href="tabs.css" rel="stylesheet" type="text/css"/>
<link href="search/search.css" rel="stylesheet" type="text/css"/>
<script type="text/javaScript" src="search/search.js"></script>
<link href="doxygen.css" rel="stylesheet" type="text/css"/>
</head>
<body onload='searchBox.OnSelectItem(0);'>
<!-- Generated by Doxygen 1.6.3 -->
<script type="text/javascript"><!--
var searchBox = new SearchBox("searchBox", "search",false,'Search');
--></script>
<div class="navigation" id="top">
  <div class="tabs">
    <ul>
      <li><a href="index.html"><span>Main&nbsp;Page</span></a></li>
      <li><a href="pages.html"><span>Related&nbsp;Pages</span></a></li>
      <li><a href="modules.html"><span>Modules</span></a></li>
      <li><a href="namespaces.html"><span>Namespaces</span></a></li>
      <li class="current"><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="files.html"><span>Files</span></a></li>
      <li>
        <div id="MSearchBox" class="MSearchBoxInactive">
        <img id="MSearchSelect" src="search/search.png"
             onmouseover="return searchBox.OnSearchSelectShow()"
             onmouseout="return searchBox.OnSearchSelectHide()"
             alt=""/>
        <input type="text" id="MSearchField" value="Search" accesskey="S"
             onfocus="searchBox.OnSearchFieldFocus(true)" 
             onblur="searchBox.OnSearchFieldFocus(false)" 
             onkeyup="searchBox.OnSearchFieldChange(event)"/>
        <a id="MSearchClose" href="javascript:searchBox.CloseResultsWindow()"><img id="MSearchCloseImg" border="0" src="search/close.png" alt=""/></a>
        </div>
      </li>
    </ul>
  </div>
  <div class="tabs">
    <ul>
      <li><a href="annotated.html"><span>Data&nbsp;Structures</span></a></li>
      <li><a href="functions.html"><span>Data&nbsp;Fields</span></a></li>
    </ul>
  </div>
</div>
<div class="contents">
<h1>apr_dbd_driver_t Struct Reference</h1><!-- doxytag: class="apr_dbd_driver_t" --><table border="0" cellpadding="0" cellspacing="0">
<tr><td colspan="2"><h2>Data Fields</h2></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a5483b4c47dde6814395bebfb7959fb37">name</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#aee4cda10b8f3c7680d3f8fe9d9835d6e">init</a> )(apr_pool_t *pool)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">void *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a435f098bde2b17e3b156ef33d0c9c37e">native_handle</a> )(apr_dbd_t *handle)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_dbd_t *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a911ce972cd9c1dbbcf770aed475e6428">open</a> )(apr_pool_t *pool, const char *params, const char **<a class="el" href="structapr__dbd__driver__t.html#a0f43ae627fef47fb6eb2d5a6bca07c65">error</a>)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a93567b4557c0bf19c3ce104fb4636f46">check_conn</a> )(apr_pool_t *pool, apr_dbd_t *handle)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#aef39417149ae8af2738bd8aaa92bcb42">close</a> )(apr_dbd_t *handle)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a5ec15b2e1c4f2cee690d09c14fef689b">set_dbname</a> )(apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#a5483b4c47dde6814395bebfb7959fb37">name</a>)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ad1a4117f436e9fb54e75922a0b21541e">start_transaction</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_transaction_t **trans)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a8bb760ec3ffb8c0ff8514a7133cf8cb3">end_transaction</a> )(apr_dbd_transaction_t *trans)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a87de2303419493ddab5b0c1a298c9837">query</a> )(apr_dbd_t *handle, int *nrows, const char *statement)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#adc4a483ffb93e88532034a25600ab1e4">select</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, const char *statement, int random)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ab71099e0877a99b7743f70b927f44353">num_cols</a> )(apr_dbd_results_t *res)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a8e307da83a358c169706ea9154f58f22">num_tuples</a> )(apr_dbd_results_t *res)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a93b4e127622c1f118da3855c518941cc">get_row</a> )(apr_pool_t *pool, apr_dbd_results_t *res, apr_dbd_row_t **row, int rownum)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a21742ca8a1b183de2a93ca04d030843f">get_entry</a> )(const apr_dbd_row_t *row, int col)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a0f43ae627fef47fb6eb2d5a6bca07c65">error</a> )(apr_dbd_t *handle, int errnum)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#aee7333b952c8e7fca206d10b5cf673fc">escape</a> )(apr_pool_t *pool, const char *string, apr_dbd_t *handle)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ab8c46d23cfa5340ae9cac02c4c12cf67">prepare</a> )(apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#a87de2303419493ddab5b0c1a298c9837">query</a>, const char *label, int nargs, int nvals, <a class="el" href="group___a_p_r___util___d_b_d.html#ga19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> *types, apr_dbd_prepared_t **statement)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ac57585d1c31c541770a149b7a7aa1eda">pvquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a62353e8e12d36a7bc827703db6893a47">pvselect</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ac4cca58779bfc3c11f531f0c7e3c8333">pquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const char **args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a4078c2f51108fccd7f745805b9cec354">pselect</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const char **args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#af8201f5eac24c7120b052c7a312f0126">get_name</a> )(const apr_dbd_results_t *res, int col)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a3f749fdff0337dcab151af585e097c8f">transaction_mode_get</a> )(apr_dbd_transaction_t *trans)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a2737c71d4629ae1b9860b0043fdab720">transaction_mode_set</a> )(apr_dbd_transaction_t *trans, int mode)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a975698d5688012fe2810542769ac4f05">pformat</a></td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a7e99bd85d667e3c58f30c5f18833ebb0">pvbquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a70c5afda302bc90a4ba01d12bca8fa51">pvbselect</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a60b2fb9eb3b2244a5d9f0b0fc8b0b5bd">pbquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const void **args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">int(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a97850cebe0fbaf7309e14c948c1c3a91">pbselect</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const void **args)</td></tr>
<tr><td class="memItemLeft" align="right" valign="top">apr_status_t(*&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a67ff50c786b46c305936c6593a6c5959">datum_get</a> )(const apr_dbd_row_t *row, int col, <a class="el" href="group___a_p_r___util___d_b_d.html#ga19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> type, void *data)</td></tr>
</table>
<hr/><h2>Field Documentation</h2>
<a class="anchor" id="a93567b4557c0bf19c3ce104fb4636f46"></a><!-- doxytag: member="apr_dbd_driver_t::check_conn" ref="a93567b4557c0bf19c3ce104fb4636f46" args=")(apr_pool_t *pool, apr_dbd_t *handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t(* <a class="el" href="structapr__dbd__driver__t.html#a93567b4557c0bf19c3ce104fb4636f46">apr_dbd_driver_t::check_conn</a>)(apr_pool_t *pool, apr_dbd_t *handle)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>check_conn: check status of a database connection</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- a pool to use for error messages (if any). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection to check </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>APR_SUCCESS or error </dd></dl>

</div>
</div>
<a class="anchor" id="aef39417149ae8af2738bd8aaa92bcb42"></a><!-- doxytag: member="apr_dbd_driver_t::close" ref="aef39417149ae8af2738bd8aaa92bcb42" args=")(apr_dbd_t *handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t(* <a class="el" href="structapr__dbd__driver__t.html#aef39417149ae8af2738bd8aaa92bcb42">apr_dbd_driver_t::close</a>)(apr_dbd_t *handle)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>close: close/release a connection obtained from <a class="el" href="structapr__dbd__driver__t.html#a911ce972cd9c1dbbcf770aed475e6428">open()</a></p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection to release </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>APR_SUCCESS or error </dd></dl>

</div>
</div>
<a class="anchor" id="a67ff50c786b46c305936c6593a6c5959"></a><!-- doxytag: member="apr_dbd_driver_t::datum_get" ref="a67ff50c786b46c305936c6593a6c5959" args=")(const apr_dbd_row_t *row, int col, apr_dbd_type_e type, void *data)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_status_t(* <a class="el" href="structapr__dbd__driver__t.html#a67ff50c786b46c305936c6593a6c5959">apr_dbd_driver_t::datum_get</a>)(const apr_dbd_row_t *row, int col, <a class="el" href="group___a_p_r___util___d_b_d.html#ga19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> type, void *data)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>datum_get: get a binary entry from a row</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>- row pointer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>col</em>&nbsp;</td><td>- entry number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td>- type of data to get </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>- pointer to data, allocated by the caller </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>APR_SUCCESS, an error code on error or if col is out of bounds </dd></dl>

</div>
</div>
<a class="anchor" id="a8bb760ec3ffb8c0ff8514a7133cf8cb3"></a><!-- doxytag: member="apr_dbd_driver_t::end_transaction" ref="a8bb760ec3ffb8c0ff8514a7133cf8cb3" args=")(apr_dbd_transaction_t *trans)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a8bb760ec3ffb8c0ff8514a7133cf8cb3">apr_dbd_driver_t::end_transaction</a>)(apr_dbd_transaction_t *trans)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>end_transaction: end a transaction (commit on success, rollback on error). May be a no-op.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>trans</em>&nbsp;</td><td>- the transaction. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a0f43ae627fef47fb6eb2d5a6bca07c65"></a><!-- doxytag: member="apr_dbd_driver_t::error" ref="a0f43ae627fef47fb6eb2d5a6bca07c65" args=")(apr_dbd_t *handle, int errnum)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char*(* <a class="el" href="structapr__dbd__driver__t.html#a0f43ae627fef47fb6eb2d5a6bca07c65">apr_dbd_driver_t::error</a>)(apr_dbd_t *handle, int errnum)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>error: get current error message (if any)</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>errnum</em>&nbsp;</td><td>- error code from operation that returned an error </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the database current error message, or message for errnum (implementation-dependent whether errnum is ignored) </dd></dl>

</div>
</div>
<a class="anchor" id="aee7333b952c8e7fca206d10b5cf673fc"></a><!-- doxytag: member="apr_dbd_driver_t::escape" ref="aee7333b952c8e7fca206d10b5cf673fc" args=")(apr_pool_t *pool, const char *string, apr_dbd_t *handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char*(* <a class="el" href="structapr__dbd__driver__t.html#aee7333b952c8e7fca206d10b5cf673fc">apr_dbd_driver_t::escape</a>)(apr_pool_t *pool, const char *string, apr_dbd_t *handle)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>escape: escape a string so it is safe for use in query/select</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- pool to alloc the result from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>string</em>&nbsp;</td><td>- the string to escape </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the escaped, safe string </dd></dl>

</div>
</div>
<a class="anchor" id="a21742ca8a1b183de2a93ca04d030843f"></a><!-- doxytag: member="apr_dbd_driver_t::get_entry" ref="a21742ca8a1b183de2a93ca04d030843f" args=")(const apr_dbd_row_t *row, int col)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char*(* <a class="el" href="structapr__dbd__driver__t.html#a21742ca8a1b183de2a93ca04d030843f">apr_dbd_driver_t::get_entry</a>)(const apr_dbd_row_t *row, int col)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>get_entry: get an entry from a row</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>- row pointer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>col</em>&nbsp;</td><td>- entry number </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>val</em>&nbsp;</td><td>- entry to fill </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success, -1 for no data, +1 for general error </dd></dl>

</div>
</div>
<a class="anchor" id="af8201f5eac24c7120b052c7a312f0126"></a><!-- doxytag: member="apr_dbd_driver_t::get_name" ref="af8201f5eac24c7120b052c7a312f0126" args=")(const apr_dbd_results_t *res, int col)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char*(* <a class="el" href="structapr__dbd__driver__t.html#af8201f5eac24c7120b052c7a312f0126">apr_dbd_driver_t::get_name</a>)(const apr_dbd_results_t *res, int col)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>get_name: get a column title from a result set</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- result set pointer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>col</em>&nbsp;</td><td>- entry number </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>param name, or NULL if col is out of bounds. </dd></dl>

</div>
</div>
<a class="anchor" id="a93b4e127622c1f118da3855c518941cc"></a><!-- doxytag: member="apr_dbd_driver_t::get_row" ref="a93b4e127622c1f118da3855c518941cc" args=")(apr_pool_t *pool, apr_dbd_results_t *res, apr_dbd_row_t **row, int rownum)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a93b4e127622c1f118da3855c518941cc">apr_dbd_driver_t::get_row</a>)(apr_pool_t *pool, apr_dbd_results_t *res, apr_dbd_row_t **row, int rownum)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>get_row: get a row from a result set</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- pool to allocate the row </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- result set pointer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>- pointer to row pointer. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>rownum</em>&nbsp;</td><td>- row number, or -1 for "next row". Ignored if random access is not supported. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success, -1 for rownum out of range or data finished </dd></dl>

</div>
</div>
<a class="anchor" id="aee4cda10b8f3c7680d3f8fe9d9835d6e"></a><!-- doxytag: member="apr_dbd_driver_t::init" ref="aee4cda10b8f3c7680d3f8fe9d9835d6e" args=")(apr_pool_t *pool)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void(* <a class="el" href="structapr__dbd__driver__t.html#aee4cda10b8f3c7680d3f8fe9d9835d6e">apr_dbd_driver_t::init</a>)(apr_pool_t *pool)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>init: allow driver to perform once-only initialisation. Called once only. May be NULL </p>

</div>
</div>
<a class="anchor" id="a5483b4c47dde6814395bebfb7959fb37"></a><!-- doxytag: member="apr_dbd_driver_t::name" ref="a5483b4c47dde6814395bebfb7959fb37" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="structapr__dbd__driver__t.html#a5483b4c47dde6814395bebfb7959fb37">apr_dbd_driver_t::name</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>name </p>

</div>
</div>
<a class="anchor" id="a435f098bde2b17e3b156ef33d0c9c37e"></a><!-- doxytag: member="apr_dbd_driver_t::native_handle" ref="a435f098bde2b17e3b156ef33d0c9c37e" args=")(apr_dbd_t *handle)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">void*(* <a class="el" href="structapr__dbd__driver__t.html#a435f098bde2b17e3b156ef33d0c9c37e">apr_dbd_driver_t::native_handle</a>)(apr_dbd_t *handle)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>native_handle: return the native database handle of the underlying db</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- apr_dbd handle </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>- native handle </dd></dl>

</div>
</div>
<a class="anchor" id="ab71099e0877a99b7743f70b927f44353"></a><!-- doxytag: member="apr_dbd_driver_t::num_cols" ref="ab71099e0877a99b7743f70b927f44353" args=")(apr_dbd_results_t *res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#ab71099e0877a99b7743f70b927f44353">apr_dbd_driver_t::num_cols</a>)(apr_dbd_results_t *res)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>num_cols: get the number of columns in a results set</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- result set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of columns </dd></dl>

</div>
</div>
<a class="anchor" id="a8e307da83a358c169706ea9154f58f22"></a><!-- doxytag: member="apr_dbd_driver_t::num_tuples" ref="a8e307da83a358c169706ea9154f58f22" args=")(apr_dbd_results_t *res)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a8e307da83a358c169706ea9154f58f22">apr_dbd_driver_t::num_tuples</a>)(apr_dbd_results_t *res)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>num_tuples: get the number of rows in a results set of a synchronous select</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- result set. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>number of rows, or -1 if the results are asynchronous </dd></dl>

</div>
</div>
<a class="anchor" id="a911ce972cd9c1dbbcf770aed475e6428"></a><!-- doxytag: member="apr_dbd_driver_t::open" ref="a911ce972cd9c1dbbcf770aed475e6428" args=")(apr_pool_t *pool, const char *params, const char **error)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">apr_dbd_t*(* <a class="el" href="structapr__dbd__driver__t.html#a911ce972cd9c1dbbcf770aed475e6428">apr_dbd_driver_t::open</a>)(apr_pool_t *pool, const char *params, const char **<a class="el" href="structapr__dbd__driver__t.html#a0f43ae627fef47fb6eb2d5a6bca07c65">error</a>)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>open: obtain a database connection from the server rec. Must be explicitly closed when you're finished with it. WARNING: only use this when you need a connection with a lifetime other than a request</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- a pool to use for error messages (if any). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>params</em>&nbsp;</td><td>- connection parameters. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>error</em>&nbsp;</td><td>- descriptive error. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>database handle, or NULL on error. </dd></dl>

</div>
</div>
<a class="anchor" id="a60b2fb9eb3b2244a5d9f0b0fc8b0b5bd"></a><!-- doxytag: member="apr_dbd_driver_t::pbquery" ref="a60b2fb9eb3b2244a5d9f0b0fc8b0b5bd" args=")(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const void **args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a60b2fb9eb3b2244a5d9f0b0fc8b0b5bd">apr_dbd_driver_t::pbquery</a>)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const void **args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pbquery: query using a prepared statement + binary args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nrows</em>&nbsp;</td><td>- number of rows affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- binary args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a97850cebe0fbaf7309e14c948c1c3a91"></a><!-- doxytag: member="apr_dbd_driver_t::pbselect" ref="a97850cebe0fbaf7309e14c948c1c3a91" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const void **args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a97850cebe0fbaf7309e14c948c1c3a91">apr_dbd_driver_t::pbselect</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const void **args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pbselect: select using a prepared statement + binary args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- pointer to query results. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>random</em>&nbsp;</td><td>- Whether to support random-access to results </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- binary args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a975698d5688012fe2810542769ac4f05"></a><!-- doxytag: member="apr_dbd_driver_t::pformat" ref="a975698d5688012fe2810542769ac4f05" args="" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">const char* <a class="el" href="structapr__dbd__driver__t.html#a975698d5688012fe2810542769ac4f05">apr_dbd_driver_t::pformat</a></td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>format of prepared statement parameters </p>

</div>
</div>
<a class="anchor" id="ac4cca58779bfc3c11f531f0c7e3c8333"></a><!-- doxytag: member="apr_dbd_driver_t::pquery" ref="ac4cca58779bfc3c11f531f0c7e3c8333" args=")(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const char **args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#ac4cca58779bfc3c11f531f0c7e3c8333">apr_dbd_driver_t::pquery</a>)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const char **args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pquery: query using a prepared statement + args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nrows</em>&nbsp;</td><td>- number of rows affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="ab8c46d23cfa5340ae9cac02c4c12cf67"></a><!-- doxytag: member="apr_dbd_driver_t::prepare" ref="ab8c46d23cfa5340ae9cac02c4c12cf67" args=")(apr_pool_t *pool, apr_dbd_t *handle, const char *query, const char *label, int nargs, int nvals, apr_dbd_type_e *types, apr_dbd_prepared_t **statement)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#ab8c46d23cfa5340ae9cac02c4c12cf67">apr_dbd_driver_t::prepare</a>)(apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#a87de2303419493ddab5b0c1a298c9837">query</a>, const char *label, int nargs, int nvals, <a class="el" href="group___a_p_r___util___d_b_d.html#ga19608fa5d518a5121bee23daacc5c230">apr_dbd_type_e</a> *types, apr_dbd_prepared_t **statement)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>prepare: prepare a statement</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- pool to alloc the result from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>query</em>&nbsp;</td><td>- the SQL query </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>label</em>&nbsp;</td><td>- A label for the prepared statement. use NULL for temporary prepared statements (eg within a Request in httpd) </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nargs</em>&nbsp;</td><td>- number of parameters in the query </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nvals</em>&nbsp;</td><td>- number of values passed in p[b]query/select </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>types</em>&nbsp;</td><td>- pointer to an array with types of parameters </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- statement to prepare. May point to null on entry. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a4078c2f51108fccd7f745805b9cec354"></a><!-- doxytag: member="apr_dbd_driver_t::pselect" ref="a4078c2f51108fccd7f745805b9cec354" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const char **args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a4078c2f51108fccd7f745805b9cec354">apr_dbd_driver_t::pselect</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, const char **args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pselect: select using a prepared statement + args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- pointer to query results. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>random</em>&nbsp;</td><td>- Whether to support random-access to results </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a7e99bd85d667e3c58f30c5f18833ebb0"></a><!-- doxytag: member="apr_dbd_driver_t::pvbquery" ref="a7e99bd85d667e3c58f30c5f18833ebb0" args=")(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a7e99bd85d667e3c58f30c5f18833ebb0">apr_dbd_driver_t::pvbquery</a>)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pvbquery: query using a prepared statement + binary args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nrows</em>&nbsp;</td><td>- number of rows affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- binary args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a70c5afda302bc90a4ba01d12bca8fa51"></a><!-- doxytag: member="apr_dbd_driver_t::pvbselect" ref="a70c5afda302bc90a4ba01d12bca8fa51" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a70c5afda302bc90a4ba01d12bca8fa51">apr_dbd_driver_t::pvbselect</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pvbselect: select using a prepared statement + binary args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- pointer to query results. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>random</em>&nbsp;</td><td>- Whether to support random-access to results </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- binary args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="ac57585d1c31c541770a149b7a7aa1eda"></a><!-- doxytag: member="apr_dbd_driver_t::pvquery" ref="ac57585d1c31c541770a149b7a7aa1eda" args=")(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#ac57585d1c31c541770a149b7a7aa1eda">apr_dbd_driver_t::pvquery</a>)(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pvquery: query using a prepared statement + args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nrows</em>&nbsp;</td><td>- number of rows affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a62353e8e12d36a7bc827703db6893a47"></a><!-- doxytag: member="apr_dbd_driver_t::pvselect" ref="a62353e8e12d36a7bc827703db6893a47" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a62353e8e12d36a7bc827703db6893a47">apr_dbd_driver_t::pvselect</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, apr_dbd_prepared_t *statement, int random, va_list args)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>pvselect: select using a prepared statement + args</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- pointer to query results. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the prepared statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>random</em>&nbsp;</td><td>- Whether to support random-access to results </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>args</em>&nbsp;</td><td>- args to prepared statement </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a87de2303419493ddab5b0c1a298c9837"></a><!-- doxytag: member="apr_dbd_driver_t::query" ref="a87de2303419493ddab5b0c1a298c9837" args=")(apr_dbd_t *handle, int *nrows, const char *statement)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a87de2303419493ddab5b0c1a298c9837">apr_dbd_driver_t::query</a>)(apr_dbd_t *handle, int *nrows, const char *statement)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>query: execute an SQL query that doesn't return a result set</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>nrows</em>&nbsp;</td><td>- number of rows affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the SQL statement to execute </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="adc4a483ffb93e88532034a25600ab1e4"></a><!-- doxytag: member="apr_dbd_driver_t::select" ref="adc4a483ffb93e88532034a25600ab1e4" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, const char *statement, int random)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#adc4a483ffb93e88532034a25600ab1e4">apr_dbd_driver_t::select</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, const char *statement, int random)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>select: execute an SQL query that returns a result set</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- pool to allocate the result set </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>res</em>&nbsp;</td><td>- pointer to result set pointer. May point to NULL on entry </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>statement</em>&nbsp;</td><td>- the SQL statement to execute </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>random</em>&nbsp;</td><td>- 1 to support random access to results (seek any row); 0 to support only looping through results in order (async access - faster) </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a5ec15b2e1c4f2cee690d09c14fef689b"></a><!-- doxytag: member="apr_dbd_driver_t::set_dbname" ref="a5ec15b2e1c4f2cee690d09c14fef689b" args=")(apr_pool_t *pool, apr_dbd_t *handle, const char *name)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a5ec15b2e1c4f2cee690d09c14fef689b">apr_dbd_driver_t::set_dbname</a>)(apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#a5483b4c47dde6814395bebfb7959fb37">name</a>)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>set_dbname: select database name. May be a no-op if not supported.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- working pool </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>- the database to select </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="ad1a4117f436e9fb54e75922a0b21541e"></a><!-- doxytag: member="apr_dbd_driver_t::start_transaction" ref="ad1a4117f436e9fb54e75922a0b21541e" args=")(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_transaction_t **trans)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#ad1a4117f436e9fb54e75922a0b21541e">apr_dbd_driver_t::start_transaction</a>)(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_transaction_t **trans)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>transaction: start a transaction. May be a no-op.</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>pool</em>&nbsp;</td><td>- a pool to use for error messages (if any). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>handle</em>&nbsp;</td><td>- the connection </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>trans</em>&nbsp;</td><td>- ptr to a transaction. May be null on entry </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>0 for success or error code </dd></dl>

</div>
</div>
<a class="anchor" id="a3f749fdff0337dcab151af585e097c8f"></a><!-- doxytag: member="apr_dbd_driver_t::transaction_mode_get" ref="a3f749fdff0337dcab151af585e097c8f" args=")(apr_dbd_transaction_t *trans)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a3f749fdff0337dcab151af585e097c8f">apr_dbd_driver_t::transaction_mode_get</a>)(apr_dbd_transaction_t *trans)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>transaction_mode_get: get the mode of transaction</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>trans</em>&nbsp;</td><td>- the transaction. </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>mode of transaction </dd></dl>

</div>
</div>
<a class="anchor" id="a2737c71d4629ae1b9860b0043fdab720"></a><!-- doxytag: member="apr_dbd_driver_t::transaction_mode_set" ref="a2737c71d4629ae1b9860b0043fdab720" args=")(apr_dbd_transaction_t *trans, int mode)" -->
<div class="memitem">
<div class="memproto">
      <table class="memname">
        <tr>
          <td class="memname">int(* <a class="el" href="structapr__dbd__driver__t.html#a2737c71d4629ae1b9860b0043fdab720">apr_dbd_driver_t::transaction_mode_set</a>)(apr_dbd_transaction_t *trans, int mode)</td>
        </tr>
      </table>
</div>
<div class="memdoc">
<p>transaction_mode_set: get the mode of transaction</p>
<dl><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>trans</em>&nbsp;</td><td>- the transaction. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>mode</em>&nbsp;</td><td>- new mode of the transaction </td></tr>
  </table>
  </dd>
</dl>
<dl class="return"><dt><b>Returns:</b></dt><dd>the mode of transaction in force after the call </dd></dl>

</div>
</div>
<hr/>The documentation for this struct was generated from the following file:<ul>
<li>include/private/<a class="el" href="apr__dbd__internal_8h_source.html">apr_dbd_internal.h</a></li>
</ul>
</div>
<!--- window showing the filter options -->
<div id="MSearchSelectWindow"
     onmouseover="return searchBox.OnSearchSelectShow()"
     onmouseout="return searchBox.OnSearchSelectHide()"
     onkeydown="return searchBox.OnSearchSelectKey(event)">
<a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(0)"><span class="SelectionMark">&nbsp;</span>All</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(1)"><span class="SelectionMark">&nbsp;</span>Data Structures</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(2)"><span class="SelectionMark">&nbsp;</span>Namespaces</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(3)"><span class="SelectionMark">&nbsp;</span>Files</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(4)"><span class="SelectionMark">&nbsp;</span>Functions</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(5)"><span class="SelectionMark">&nbsp;</span>Variables</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(6)"><span class="SelectionMark">&nbsp;</span>Typedefs</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(7)"><span class="SelectionMark">&nbsp;</span>Enumerations</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(8)"><span class="SelectionMark">&nbsp;</span>Enumerator</a><a class="SelectItem" href="javascript:void(0)" onclick="searchBox.OnSelectItem(9)"><span class="SelectionMark">&nbsp;</span>Defines</a></div>

<!-- iframe showing the search results (closed by default) -->
<div id="MSearchResultsWindow">
<iframe src="" frameborder="0" 
        name="MSearchResults" id="MSearchResults">
</iframe>
</div>

<hr class="footer"/><address style="text-align: right;"><small>Generated on Wed Feb 1 12:19:48 2012 for Apache Portable Runtime Utility Library by&nbsp;
<a href="http://www.doxygen.org/index.html">
<img class="footer" src="doxygen.png" alt="doxygen"/></a> 1.6.3 </small></address>
</body>
</html>