JezK
Edit File: structapr__dbd__driver__t.html
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "https://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"/> <meta http-equiv="X-UA-Compatible" content="IE=11"/> <meta name="generator" content="Doxygen 1.9.4"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>Apache Portable Runtime Utility Library: apr_dbd_driver_t Struct Reference</title> <link href="tabs.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="jquery.js"></script> <script type="text/javascript" src="dynsections.js"></script> <link href="search/search.css" rel="stylesheet" type="text/css"/> <script type="text/javascript" src="search/searchdata.js"></script> <script type="text/javascript" src="search/search.js"></script> <link href="doxygen.css" rel="stylesheet" type="text/css" /> </head> <body> <div id="top"><!-- do not remove this div, it is closed by doxygen! --> <div id="titlearea"> <table cellspacing="0" cellpadding="0"> <tbody> <tr id="projectrow"> <td id="projectalign"> <div id="projectname">Apache Portable Runtime Utility Library </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.9.4 --> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ var searchBox = new SearchBox("searchBox", "search",'Search','.html'); /* @license-end */ </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> /* @license magnet:?xt=urn:btih:d3d9a9a6595521f9666a5e94cc830dab83b65699&dn=expat.txt MIT */ $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); /* @license-end */ </script> <div id="main-nav"></div> <!-- window showing the filter options --> <div id="MSearchSelectWindow" onmouseover="return searchBox.OnSearchSelectShow()" onmouseout="return searchBox.OnSearchSelectHide()" onkeydown="return searchBox.OnSearchSelectKey(event)"> </div> <!-- iframe showing the search results (closed by default) --> <div id="MSearchResultsWindow"> <iframe src="javascript:void(0)" frameborder="0" name="MSearchResults" id="MSearchResults"> </iframe> </div> </div><!-- top --> <div class="header"> <div class="summary"> <a href="#pub-attribs">Data Fields</a> </div> <div class="headertitle"><div class="title">apr_dbd_driver_t Struct Reference</div></div> </div><!--header--> <div class="contents"> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a id="pub-attribs" name="pub-attribs"></a> Data Fields</h2></td></tr> <tr class="memitem:a5483b4c47dde6814395bebfb7959fb37"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a5483b4c47dde6814395bebfb7959fb37">name</a></td></tr> <tr class="separator:a5483b4c47dde6814395bebfb7959fb37"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abe128d58439959850b95c8ff8ebd89a1"><td class="memItemLeft" align="right" valign="top">void(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#abe128d58439959850b95c8ff8ebd89a1">init</a> )(apr_pool_t *pool)</td></tr> <tr class="separator:abe128d58439959850b95c8ff8ebd89a1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af8b234bd87eef570b123910ec6694a15"><td class="memItemLeft" align="right" valign="top">void *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#af8b234bd87eef570b123910ec6694a15">native_handle</a> )(apr_dbd_t *handle)</td></tr> <tr class="separator:af8b234bd87eef570b123910ec6694a15"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a09e95874c608afe6029c2630e181af89"><td class="memItemLeft" align="right" valign="top">apr_dbd_t *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a09e95874c608afe6029c2630e181af89">open</a> )(apr_pool_t *pool, const char *params, const char **<a class="el" href="structapr__dbd__driver__t.html#a8f91d0602037b1553a11e69444f486e0">error</a>)</td></tr> <tr class="separator:a09e95874c608afe6029c2630e181af89"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a644f9d26c9a3f3ebbde35fcc5caa7903"><td class="memItemLeft" align="right" valign="top">apr_status_t(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a644f9d26c9a3f3ebbde35fcc5caa7903">check_conn</a> )(apr_pool_t *pool, apr_dbd_t *handle)</td></tr> <tr class="separator:a644f9d26c9a3f3ebbde35fcc5caa7903"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a51f2fb88a8f6d109e859e470c12922e2"><td class="memItemLeft" align="right" valign="top">apr_status_t(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a51f2fb88a8f6d109e859e470c12922e2">close</a> )(apr_dbd_t *handle)</td></tr> <tr class="separator:a51f2fb88a8f6d109e859e470c12922e2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a0c9507b1cdf1a221165e7e48e6b54404"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a0c9507b1cdf1a221165e7e48e6b54404">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 class="separator:a0c9507b1cdf1a221165e7e48e6b54404"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a665ebdcc7ccf31b394aa25b138425331"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a665ebdcc7ccf31b394aa25b138425331">start_transaction</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_transaction_t **trans)</td></tr> <tr class="separator:a665ebdcc7ccf31b394aa25b138425331"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8ec55cbddf69f4d371017d0c985abe76"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a8ec55cbddf69f4d371017d0c985abe76">end_transaction</a> )(apr_dbd_transaction_t *trans)</td></tr> <tr class="separator:a8ec55cbddf69f4d371017d0c985abe76"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac42de1c72ac0ed642335b607d3697ce8"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ac42de1c72ac0ed642335b607d3697ce8">query</a> )(apr_dbd_t *handle, int *nrows, const char *statement)</td></tr> <tr class="separator:ac42de1c72ac0ed642335b607d3697ce8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2df4f0cf267ce9129189e3bb47e4b98e"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a2df4f0cf267ce9129189e3bb47e4b98e">select</a> )(apr_pool_t *pool, apr_dbd_t *handle, apr_dbd_results_t **res, const char *statement, int random)</td></tr> <tr class="separator:a2df4f0cf267ce9129189e3bb47e4b98e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a518d4b194539fb068ef38ba16d803185"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a518d4b194539fb068ef38ba16d803185">num_cols</a> )(apr_dbd_results_t *res)</td></tr> <tr class="separator:a518d4b194539fb068ef38ba16d803185"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2f5afd04b4ad2ef6ce737b8bad4c0cea"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a2f5afd04b4ad2ef6ce737b8bad4c0cea">num_tuples</a> )(apr_dbd_results_t *res)</td></tr> <tr class="separator:a2f5afd04b4ad2ef6ce737b8bad4c0cea"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad7257c26c42d4f399d9a1ab04cc6c17a"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ad7257c26c42d4f399d9a1ab04cc6c17a">get_row</a> )(apr_pool_t *pool, apr_dbd_results_t *res, apr_dbd_row_t **row, int rownum)</td></tr> <tr class="separator:ad7257c26c42d4f399d9a1ab04cc6c17a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac0bd3f0fa31886ec88d1fc3e426ac729"><td class="memItemLeft" align="right" valign="top">const char *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ac0bd3f0fa31886ec88d1fc3e426ac729">get_entry</a> )(const apr_dbd_row_t *row, int col)</td></tr> <tr class="separator:ac0bd3f0fa31886ec88d1fc3e426ac729"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a8f91d0602037b1553a11e69444f486e0"><td class="memItemLeft" align="right" valign="top">const char *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a8f91d0602037b1553a11e69444f486e0">error</a> )(apr_dbd_t *handle, int errnum)</td></tr> <tr class="separator:a8f91d0602037b1553a11e69444f486e0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ae5d5d9f82e15252b8a04258c1ab1a155"><td class="memItemLeft" align="right" valign="top">const char *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ae5d5d9f82e15252b8a04258c1ab1a155">escape</a> )(apr_pool_t *pool, const char *string, apr_dbd_t *handle)</td></tr> <tr class="separator:ae5d5d9f82e15252b8a04258c1ab1a155"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a2f2a54582974268e8ba3264dca640ca6"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a2f2a54582974268e8ba3264dca640ca6">prepare</a> )(apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#ac42de1c72ac0ed642335b607d3697ce8">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 class="separator:a2f2a54582974268e8ba3264dca640ca6"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9c68730a69a09b4ab06febb944147888"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a9c68730a69a09b4ab06febb944147888">pvquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td></tr> <tr class="separator:a9c68730a69a09b4ab06febb944147888"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ad0b6fca421fe2e009804ab85ab64c1db"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ad0b6fca421fe2e009804ab85ab64c1db">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 class="separator:ad0b6fca421fe2e009804ab85ab64c1db"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a849f8ae47843b0f2d8633d3f3b002493"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a849f8ae47843b0f2d8633d3f3b002493">pquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const char **args)</td></tr> <tr class="separator:a849f8ae47843b0f2d8633d3f3b002493"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a1295f5431413acc31faf84342bdf6ed0"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a1295f5431413acc31faf84342bdf6ed0">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 class="separator:a1295f5431413acc31faf84342bdf6ed0"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ac9ce02c899fa2e984182347fb6c6afe4"><td class="memItemLeft" align="right" valign="top">const char *(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#ac9ce02c899fa2e984182347fb6c6afe4">get_name</a> )(const apr_dbd_results_t *res, int col)</td></tr> <tr class="separator:ac9ce02c899fa2e984182347fb6c6afe4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a00d4b7a3362ced55e9b5f0c2513aa284"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a00d4b7a3362ced55e9b5f0c2513aa284">transaction_mode_get</a> )(apr_dbd_transaction_t *trans)</td></tr> <tr class="separator:a00d4b7a3362ced55e9b5f0c2513aa284"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a81620ae15072e50976ddca1808efbba4"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a81620ae15072e50976ddca1808efbba4">transaction_mode_set</a> )(apr_dbd_transaction_t *trans, int mode)</td></tr> <tr class="separator:a81620ae15072e50976ddca1808efbba4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a975698d5688012fe2810542769ac4f05"><td class="memItemLeft" align="right" valign="top">const char * </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a975698d5688012fe2810542769ac4f05">pformat</a></td></tr> <tr class="separator:a975698d5688012fe2810542769ac4f05"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a9731123f5323c4d12b24065b4c36cb1a"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a9731123f5323c4d12b24065b4c36cb1a">pvbquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, va_list args)</td></tr> <tr class="separator:a9731123f5323c4d12b24065b4c36cb1a"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:a003dc5921881f3d548026ba6be8044f2"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#a003dc5921881f3d548026ba6be8044f2">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 class="separator:a003dc5921881f3d548026ba6be8044f2"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:af3769b3e57bd3fcef9cadf43415320d1"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#af3769b3e57bd3fcef9cadf43415320d1">pbquery</a> )(apr_pool_t *pool, apr_dbd_t *handle, int *nrows, apr_dbd_prepared_t *statement, const void **args)</td></tr> <tr class="separator:af3769b3e57bd3fcef9cadf43415320d1"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:abf1e22068afc62e081fbf985c2683bd9"><td class="memItemLeft" align="right" valign="top">int(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#abf1e22068afc62e081fbf985c2683bd9">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 class="separator:abf1e22068afc62e081fbf985c2683bd9"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:aa4e7085c08af67ae80cfca708ee00d4f"><td class="memItemLeft" align="right" valign="top">apr_status_t(* </td><td class="memItemRight" valign="bottom"><a class="el" href="structapr__dbd__driver__t.html#aa4e7085c08af67ae80cfca708ee00d4f">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> <tr class="separator:aa4e7085c08af67ae80cfca708ee00d4f"><td class="memSeparator" colspan="2"> </td></tr> </table> <h2 class="groupheader">Field Documentation</h2> <a id="a644f9d26c9a3f3ebbde35fcc5caa7903" name="a644f9d26c9a3f3ebbde35fcc5caa7903"></a> <h2 class="memtitle"><span class="permalink"><a href="#a644f9d26c9a3f3ebbde35fcc5caa7903">◆ </a></span>check_conn</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t(* apr_dbd_driver_t::check_conn) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- a pool to use for error messages (if any). </td></tr> <tr><td class="paramname">handle</td><td>- the connection to check </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or error </dd></dl> </div> </div> <a id="a51f2fb88a8f6d109e859e470c12922e2" name="a51f2fb88a8f6d109e859e470c12922e2"></a> <h2 class="memtitle"><span class="permalink"><a href="#a51f2fb88a8f6d109e859e470c12922e2">◆ </a></span>close</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t(* apr_dbd_driver_t::close) (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#a09e95874c608afe6029c2630e181af89">open()</a></p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">handle</td><td>- the connection to release </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS or error </dd></dl> </div> </div> <a id="aa4e7085c08af67ae80cfca708ee00d4f" name="aa4e7085c08af67ae80cfca708ee00d4f"></a> <h2 class="memtitle"><span class="permalink"><a href="#aa4e7085c08af67ae80cfca708ee00d4f">◆ </a></span>datum_get</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_status_t(* apr_dbd_driver_t::datum_get) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">row</td><td>- row pointer </td></tr> <tr><td class="paramname">col</td><td>- entry number </td></tr> <tr><td class="paramname">type</td><td>- type of data to get </td></tr> <tr><td class="paramname">data</td><td>- pointer to data, allocated by the caller </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>APR_SUCCESS, an error code on error or if col is out of bounds </dd></dl> </div> </div> <a id="a8ec55cbddf69f4d371017d0c985abe76" name="a8ec55cbddf69f4d371017d0c985abe76"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8ec55cbddf69f4d371017d0c985abe76">◆ </a></span>end_transaction</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::end_transaction) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">trans</td><td>- the transaction. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a8f91d0602037b1553a11e69444f486e0" name="a8f91d0602037b1553a11e69444f486e0"></a> <h2 class="memtitle"><span class="permalink"><a href="#a8f91d0602037b1553a11e69444f486e0">◆ </a></span>error</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char *(* apr_dbd_driver_t::error) (apr_dbd_t *handle, int errnum)</td> </tr> </table> </div><div class="memdoc"> <p >error: get current error message (if any)</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">errnum</td><td>- error code from operation that returned an error </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the database current error message, or message for errnum (implementation-dependent whether errnum is ignored) </dd></dl> </div> </div> <a id="ae5d5d9f82e15252b8a04258c1ab1a155" name="ae5d5d9f82e15252b8a04258c1ab1a155"></a> <h2 class="memtitle"><span class="permalink"><a href="#ae5d5d9f82e15252b8a04258c1ab1a155">◆ </a></span>escape</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char *(* apr_dbd_driver_t::escape) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- pool to alloc the result from </td></tr> <tr><td class="paramname">string</td><td>- the string to escape </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>the escaped, safe string </dd></dl> </div> </div> <a id="ac0bd3f0fa31886ec88d1fc3e426ac729" name="ac0bd3f0fa31886ec88d1fc3e426ac729"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac0bd3f0fa31886ec88d1fc3e426ac729">◆ </a></span>get_entry</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char *(* apr_dbd_driver_t::get_entry) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">row</td><td>- row pointer </td></tr> <tr><td class="paramname">col</td><td>- entry number </td></tr> <tr><td class="paramname">val</td><td>- entry to fill </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success, -1 for no data, +1 for general error </dd></dl> </div> </div> <a id="ac9ce02c899fa2e984182347fb6c6afe4" name="ac9ce02c899fa2e984182347fb6c6afe4"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac9ce02c899fa2e984182347fb6c6afe4">◆ </a></span>get_name</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char *(* apr_dbd_driver_t::get_name) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">res</td><td>- result set pointer </td></tr> <tr><td class="paramname">col</td><td>- entry number </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>param name, or NULL if col is out of bounds. </dd></dl> </div> </div> <a id="ad7257c26c42d4f399d9a1ab04cc6c17a" name="ad7257c26c42d4f399d9a1ab04cc6c17a"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad7257c26c42d4f399d9a1ab04cc6c17a">◆ </a></span>get_row</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::get_row) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- pool to allocate the row </td></tr> <tr><td class="paramname">res</td><td>- result set pointer </td></tr> <tr><td class="paramname">row</td><td>- pointer to row pointer. May point to NULL on entry </td></tr> <tr><td class="paramname">rownum</td><td>- row number, or -1 for "next row". Ignored if random access is not supported. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success, -1 for rownum out of range or data finished </dd></dl> </div> </div> <a id="abe128d58439959850b95c8ff8ebd89a1" name="abe128d58439959850b95c8ff8ebd89a1"></a> <h2 class="memtitle"><span class="permalink"><a href="#abe128d58439959850b95c8ff8ebd89a1">◆ </a></span>init</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void(* apr_dbd_driver_t::init) (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 id="a5483b4c47dde6814395bebfb7959fb37" name="a5483b4c47dde6814395bebfb7959fb37"></a> <h2 class="memtitle"><span class="permalink"><a href="#a5483b4c47dde6814395bebfb7959fb37">◆ </a></span>name</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* apr_dbd_driver_t::name</td> </tr> </table> </div><div class="memdoc"> <p >name </p> </div> </div> <a id="af8b234bd87eef570b123910ec6694a15" name="af8b234bd87eef570b123910ec6694a15"></a> <h2 class="memtitle"><span class="permalink"><a href="#af8b234bd87eef570b123910ec6694a15">◆ </a></span>native_handle</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">void *(* apr_dbd_driver_t::native_handle) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">handle</td><td>- apr_dbd handle </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>- native handle </dd></dl> </div> </div> <a id="a518d4b194539fb068ef38ba16d803185" name="a518d4b194539fb068ef38ba16d803185"></a> <h2 class="memtitle"><span class="permalink"><a href="#a518d4b194539fb068ef38ba16d803185">◆ </a></span>num_cols</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::num_cols) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">res</td><td>- result set. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>number of columns </dd></dl> </div> </div> <a id="a2f5afd04b4ad2ef6ce737b8bad4c0cea" name="a2f5afd04b4ad2ef6ce737b8bad4c0cea"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2f5afd04b4ad2ef6ce737b8bad4c0cea">◆ </a></span>num_tuples</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::num_tuples) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">res</td><td>- result set. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>number of rows, or -1 if the results are asynchronous </dd></dl> </div> </div> <a id="a09e95874c608afe6029c2630e181af89" name="a09e95874c608afe6029c2630e181af89"></a> <h2 class="memtitle"><span class="permalink"><a href="#a09e95874c608afe6029c2630e181af89">◆ </a></span>open</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">apr_dbd_t *(* apr_dbd_driver_t::open) (apr_pool_t *pool, const char *params, const char **<a class="el" href="structapr__dbd__driver__t.html#a8f91d0602037b1553a11e69444f486e0">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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- a pool to use for error messages (if any). </td></tr> <tr><td class="paramname">params</td><td>- connection parameters. </td></tr> <tr><td class="paramname">error</td><td>- descriptive error. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>database handle, or NULL on error. </dd></dl> </div> </div> <a id="af3769b3e57bd3fcef9cadf43415320d1" name="af3769b3e57bd3fcef9cadf43415320d1"></a> <h2 class="memtitle"><span class="permalink"><a href="#af3769b3e57bd3fcef9cadf43415320d1">◆ </a></span>pbquery</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pbquery) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">nrows</td><td>- number of rows affected. </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">args</td><td>- binary args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="abf1e22068afc62e081fbf985c2683bd9" name="abf1e22068afc62e081fbf985c2683bd9"></a> <h2 class="memtitle"><span class="permalink"><a href="#abf1e22068afc62e081fbf985c2683bd9">◆ </a></span>pbselect</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pbselect) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">res</td><td>- pointer to query results. May point to NULL on entry </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">random</td><td>- Whether to support random-access to results </td></tr> <tr><td class="paramname">args</td><td>- binary args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a975698d5688012fe2810542769ac4f05" name="a975698d5688012fe2810542769ac4f05"></a> <h2 class="memtitle"><span class="permalink"><a href="#a975698d5688012fe2810542769ac4f05">◆ </a></span>pformat</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">const char* apr_dbd_driver_t::pformat</td> </tr> </table> </div><div class="memdoc"> <p >format of prepared statement parameters </p> </div> </div> <a id="a849f8ae47843b0f2d8633d3f3b002493" name="a849f8ae47843b0f2d8633d3f3b002493"></a> <h2 class="memtitle"><span class="permalink"><a href="#a849f8ae47843b0f2d8633d3f3b002493">◆ </a></span>pquery</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pquery) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">nrows</td><td>- number of rows affected. </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">args</td><td>- args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a2f2a54582974268e8ba3264dca640ca6" name="a2f2a54582974268e8ba3264dca640ca6"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2f2a54582974268e8ba3264dca640ca6">◆ </a></span>prepare</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::prepare) (apr_pool_t *pool, apr_dbd_t *handle, const char *<a class="el" href="structapr__dbd__driver__t.html#ac42de1c72ac0ed642335b607d3697ce8">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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- pool to alloc the result from </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">query</td><td>- the SQL query </td></tr> <tr><td class="paramname">label</td><td>- A label for the prepared statement. use NULL for temporary prepared statements (eg within a Request in httpd) </td></tr> <tr><td class="paramname">nargs</td><td>- number of parameters in the query </td></tr> <tr><td class="paramname">nvals</td><td>- number of values passed in p[b]query/select </td></tr> <tr><td class="paramname">types</td><td>- pointer to an array with types of parameters </td></tr> <tr><td class="paramname">statement</td><td>- statement to prepare. May point to null on entry. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a1295f5431413acc31faf84342bdf6ed0" name="a1295f5431413acc31faf84342bdf6ed0"></a> <h2 class="memtitle"><span class="permalink"><a href="#a1295f5431413acc31faf84342bdf6ed0">◆ </a></span>pselect</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pselect) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">res</td><td>- pointer to query results. May point to NULL on entry </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">random</td><td>- Whether to support random-access to results </td></tr> <tr><td class="paramname">args</td><td>- args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a9731123f5323c4d12b24065b4c36cb1a" name="a9731123f5323c4d12b24065b4c36cb1a"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9731123f5323c4d12b24065b4c36cb1a">◆ </a></span>pvbquery</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pvbquery) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">nrows</td><td>- number of rows affected. </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">args</td><td>- binary args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a003dc5921881f3d548026ba6be8044f2" name="a003dc5921881f3d548026ba6be8044f2"></a> <h2 class="memtitle"><span class="permalink"><a href="#a003dc5921881f3d548026ba6be8044f2">◆ </a></span>pvbselect</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pvbselect) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">res</td><td>- pointer to query results. May point to NULL on entry </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">random</td><td>- Whether to support random-access to results </td></tr> <tr><td class="paramname">args</td><td>- binary args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a9c68730a69a09b4ab06febb944147888" name="a9c68730a69a09b4ab06febb944147888"></a> <h2 class="memtitle"><span class="permalink"><a href="#a9c68730a69a09b4ab06febb944147888">◆ </a></span>pvquery</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pvquery) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">nrows</td><td>- number of rows affected. </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">args</td><td>- args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="ad0b6fca421fe2e009804ab85ab64c1db" name="ad0b6fca421fe2e009804ab85ab64c1db"></a> <h2 class="memtitle"><span class="permalink"><a href="#ad0b6fca421fe2e009804ab85ab64c1db">◆ </a></span>pvselect</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::pvselect) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">res</td><td>- pointer to query results. May point to NULL on entry </td></tr> <tr><td class="paramname">statement</td><td>- the prepared statement to execute </td></tr> <tr><td class="paramname">random</td><td>- Whether to support random-access to results </td></tr> <tr><td class="paramname">args</td><td>- args to prepared statement </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="ac42de1c72ac0ed642335b607d3697ce8" name="ac42de1c72ac0ed642335b607d3697ce8"></a> <h2 class="memtitle"><span class="permalink"><a href="#ac42de1c72ac0ed642335b607d3697ce8">◆ </a></span>query</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::query) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">nrows</td><td>- number of rows affected. </td></tr> <tr><td class="paramname">statement</td><td>- the SQL statement to execute </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a2df4f0cf267ce9129189e3bb47e4b98e" name="a2df4f0cf267ce9129189e3bb47e4b98e"></a> <h2 class="memtitle"><span class="permalink"><a href="#a2df4f0cf267ce9129189e3bb47e4b98e">◆ </a></span>select</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::select) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- pool to allocate the result set </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">res</td><td>- pointer to result set pointer. May point to NULL on entry </td></tr> <tr><td class="paramname">statement</td><td>- the SQL statement to execute </td></tr> <tr><td class="paramname">random</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="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a0c9507b1cdf1a221165e7e48e6b54404" name="a0c9507b1cdf1a221165e7e48e6b54404"></a> <h2 class="memtitle"><span class="permalink"><a href="#a0c9507b1cdf1a221165e7e48e6b54404">◆ </a></span>set_dbname</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::set_dbname) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- working pool </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">name</td><td>- the database to select </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a665ebdcc7ccf31b394aa25b138425331" name="a665ebdcc7ccf31b394aa25b138425331"></a> <h2 class="memtitle"><span class="permalink"><a href="#a665ebdcc7ccf31b394aa25b138425331">◆ </a></span>start_transaction</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::start_transaction) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pool</td><td>- a pool to use for error messages (if any). </td></tr> <tr><td class="paramname">handle</td><td>- the connection </td></tr> <tr><td class="paramname">trans</td><td>- ptr to a transaction. May be null on entry </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>0 for success or error code </dd></dl> </div> </div> <a id="a00d4b7a3362ced55e9b5f0c2513aa284" name="a00d4b7a3362ced55e9b5f0c2513aa284"></a> <h2 class="memtitle"><span class="permalink"><a href="#a00d4b7a3362ced55e9b5f0c2513aa284">◆ </a></span>transaction_mode_get</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::transaction_mode_get) (apr_dbd_transaction_t *trans)</td> </tr> </table> </div><div class="memdoc"> <p >transaction_mode_get: get the mode of transaction</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">trans</td><td>- the transaction. </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>mode of transaction </dd></dl> </div> </div> <a id="a81620ae15072e50976ddca1808efbba4" name="a81620ae15072e50976ddca1808efbba4"></a> <h2 class="memtitle"><span class="permalink"><a href="#a81620ae15072e50976ddca1808efbba4">◆ </a></span>transaction_mode_set</h2> <div class="memitem"> <div class="memproto"> <table class="memname"> <tr> <td class="memname">int(* apr_dbd_driver_t::transaction_mode_set) (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 class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">trans</td><td>- the transaction. </td></tr> <tr><td class="paramname">mode</td><td>- new mode of the transaction </td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</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><a class="el" href="apr__dbd__internal_8h_source.html">apr_dbd_internal.h</a></li> </ul> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by <a href="https://www.doxygen.org/index.html"><img class="footer" src="doxygen.svg" width="104" height="31" alt="doxygen"/></a> 1.9.4 </small></address> </body> </html>