<!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"/> <meta http-equiv="X-UA-Compatible" content="IE=9"/> <meta name="generator" content="Doxygen 1.8.12"/> <meta name="viewport" content="width=device-width, initial-scale=1"/> <title>FreeTDS API: Internal bcp functions</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 style="height: 56px;"> <td id="projectalign" style="padding-left: 0.5em;"> <div id="projectname">FreeTDS API </div> </td> </tr> </tbody> </table> </div> <!-- end header part --> <!-- Generated by Doxygen 1.8.12 --> <script type="text/javascript"> var searchBox = new SearchBox("searchBox", "search",false,'Search'); </script> <script type="text/javascript" src="menudata.js"></script> <script type="text/javascript" src="menu.js"></script> <script type="text/javascript"> $(function() { initMenu('',true,false,'search.php','Search'); $(document).ready(function() { init_search(); }); }); </script> <div id="main-nav"></div> </div><!-- top --> <!-- 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 class="header"> <div class="summary"> <a href="#func-members">Functions</a> </div> <div class="headertitle"> <div class="title">Internal bcp functions<div class="ingroups"><a class="el" href="a00517.html">The db-lib API</a> » <a class="el" href="a00520.html">Bulk copy functions</a></div></div> </div> </div><!--header--> <div class="contents"> <p>Static functions internal to the bcp library. <a href="#details">More...</a></p> <div class="dynheader"> Collaboration diagram for Internal bcp functions:</div> <div class="dyncontent"> <center><table><tr><td><div class="center"><iframe scrolling="no" frameborder="0" src="a00521.svg" width="358" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </td></tr></table></center> </div> <table class="memberdecls"> <tr class="heading"><td colspan="2"><h2 class="groupheader"><a name="func-members"></a> Functions</h2></td></tr> <tr class="memitem:ga7370f1223f13510d6b33e98f2de09fb5"><td class="memItemLeft" align="right" valign="top">static RETCODE </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#ga7370f1223f13510d6b33e98f2de09fb5">_bcp_exec_in</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc, DBINT *rows_copied)</td></tr> <tr class="separator:ga7370f1223f13510d6b33e98f2de09fb5"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gae67546338cb9542a4902aa914f57f314"><td class="memItemLeft" align="right" valign="top">static RETCODE </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gae67546338cb9542a4902aa914f57f314">_bcp_exec_out</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc, DBINT *rows_copied)</td></tr> <tr class="separator:gae67546338cb9542a4902aa914f57f314"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaf4e2c59203f2af21bb2803ef4a69bfa8"><td class="memItemLeft" align="right" valign="top">static char * </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gaf4e2c59203f2af21bb2803ef4a69bfa8">_bcp_fgets</a> (char *buffer, int size, FILE *f)</td></tr> <tr class="separator:gaf4e2c59203f2af21bb2803ef4a69bfa8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gacf69ac4cbe8e3c3e6ea665e31e5e85b8"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gacf69ac4cbe8e3c3e6ea665e31e5e85b8">_bcp_free_columns</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc)</td></tr> <tr class="separator:gacf69ac4cbe8e3c3e6ea665e31e5e85b8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gaa134c1c3ccc4326e693adb8357272f1d"><td class="memItemLeft" align="right" valign="top">static void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gaa134c1c3ccc4326e693adb8357272f1d">_bcp_free_storage</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc)</td></tr> <tr class="separator:gaa134c1c3ccc4326e693adb8357272f1d"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga0f8def4cad04c5c1e27c2b653d482dd8"><td class="memItemLeft" align="right" valign="top">static TDSRET </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#ga0f8def4cad04c5c1e27c2b653d482dd8">_bcp_get_col_data</a> (<a class="el" href="a01197.html">TDSBCPINFO</a> *bcpinfo, <a class="el" href="a01133.html">TDSCOLUMN</a> *bindcol, int offset)</td></tr> <tr class="memdesc:ga0f8def4cad04c5c1e27c2b653d482dd8"><td class="mdescLeft"> </td><td class="mdescRight">For a bcp in from program variables, get the data from the host variable. <a href="#ga0f8def4cad04c5c1e27c2b653d482dd8">More...</a><br /></td></tr> <tr class="separator:ga0f8def4cad04c5c1e27c2b653d482dd8"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gac82ffc5c1f71cbf453d81d1057004f1e"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gac82ffc5c1f71cbf453d81d1057004f1e">_bcp_get_term_var</a> (BYTE *pdata, BYTE *term, int term_len)</td></tr> <tr class="memdesc:gac82ffc5c1f71cbf453d81d1057004f1e"><td class="mdescLeft"> </td><td class="mdescRight">Get the data for bcp-in from program variables, where the program data have been identified as character terminated, This is a low-level, internal function. <a href="#gac82ffc5c1f71cbf453d81d1057004f1e">More...</a><br /></td></tr> <tr class="separator:gac82ffc5c1f71cbf453d81d1057004f1e"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga065757a7d0dce354660900de4aa79e2f"><td class="memItemLeft" align="right" valign="top">static STATUS </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#ga065757a7d0dce354660900de4aa79e2f">_bcp_read_hostfile</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc, FILE *hostfile, int *row_error)</td></tr> <tr class="separator:ga065757a7d0dce354660900de4aa79e2f"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:gafc23d62bc86b38fb757e3ac4aadca0a4"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#gafc23d62bc86b38fb757e3ac4aadca0a4">_bcp_readfmt_colinfo</a> (<a class="el" href="a00901.html">DBPROCESS</a> *dbproc, char *buf, <a class="el" href="a00877.html">BCP_HOSTCOLINFO</a> *ci)</td></tr> <tr class="separator:gafc23d62bc86b38fb757e3ac4aadca0a4"><td class="memSeparator" colspan="2"> </td></tr> <tr class="memitem:ga4d5be57b25a0654e2170fd656dc35489"><td class="memItemLeft" align="right" valign="top">static int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00521.html#ga4d5be57b25a0654e2170fd656dc35489">rtrim</a> (char *str, int len)</td></tr> <tr class="memdesc:ga4d5be57b25a0654e2170fd656dc35489"><td class="mdescLeft"> </td><td class="mdescRight">trim a string of trailing blanks <a href="#ga4d5be57b25a0654e2170fd656dc35489">More...</a><br /></td></tr> <tr class="separator:ga4d5be57b25a0654e2170fd656dc35489"><td class="memSeparator" colspan="2"> </td></tr> </table> <a name="details" id="details"></a><h2 class="groupheader">Detailed Description</h2> <p>Static functions internal to the bcp library. </p> <h2 class="groupheader">Function Documentation</h2> <a id="ga7370f1223f13510d6b33e98f2de09fb5"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga7370f1223f13510d6b33e98f2de09fb5">§ </a></span>_bcp_exec_in()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static RETCODE _bcp_exec_in </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">DBINT * </td> <td class="paramname"><em>rows_copied</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> <tr><td class="paramname">rows_copied</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>SUCCEED or FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00517.html#ga5a626d228e82be0af8449d2b8c278241" title="Enable (or prevent) bcp operations for connections made with a login. ">BCP_SETL()</a>, <a class="el" href="a00520.html#gaa23f8e5c7f437a94746c90292dd1cb01" title="Commit a set of rows to the table. ">bcp_batch()</a>, <a class="el" href="a00520.html#ga6cf03708baaf02eb016b9ee77160d879" title="Bind a program host variable to a database column. ">bcp_bind()</a>, <a class="el" href="a00520.html#ga0ed03c69e698336d015bb315ad755fd5" title="Specify the format of a datafile prior to writing to a table. ">bcp_colfmt()</a>, <a class="el" href="a00520.html#gaf13b2bb12b4200752718f3a3face3870" title="Specify the format of a host file for bulk copy purposes, with precision and scale support for numeri...">bcp_colfmt_ps()</a>, <a class="el" href="a00520.html#gae41d196a22c544d66212dacc5b555791" title="Set the length of a host variable to be written to a table. ">bcp_collen()</a>, <a class="el" href="a00520.html#ga6498235e4ef8e41ea43b01494b28998d" title="Override bcp_bind() by pointing to a different host variable. ">bcp_colptr()</a>, <a class="el" href="a00520.html#ga330b9f1028f856a9eec5115550bcb4f7" title="Indicate how many columns are to be found in the datafile. ">bcp_columns()</a>, <a class="el" href="a00520.html#ga244547855b41788fa3a67756956fbc81" title="Set BCP options for uploading a datafile. ">bcp_control()</a>, <a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#ga220f6b043602da1028f98dacb2fd00c0" title="See if BCP_SETL() was used to set the LOGINREC for BCP work. ">bcp_getl()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a>, bcp_moretext(), <a class="el" href="a00520.html#gafec3feb5bac1cb33545ba01efb0a67b8" title="Set "hints" for uploading a file. ">bcp_options()</a>, <a class="el" href="a00520.html#ga963c5e38bca7668afc57f5cc123d10fb" title="Read a format definition file. ">bcp_readfmt()</a>, <a class="el" href="a00520.html#gaf1130ac97f6af55e86ec70b0aa4f5b40" title="Write data in host variables to the table. ">bcp_sendrow()</a> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_ga7370f1223f13510d6b33e98f2de09fb5_cgraph.svg" width="271" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="gae67546338cb9542a4902aa914f57f314"></a> <h2 class="memtitle"><span class="permalink"><a href="#gae67546338cb9542a4902aa914f57f314">§ </a></span>_bcp_exec_out()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static RETCODE _bcp_exec_out </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">DBINT * </td> <td class="paramname"><em>rows_copied</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> <tr><td class="paramname">rows_copied</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>SUCCEED or FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00517.html#ga5a626d228e82be0af8449d2b8c278241" title="Enable (or prevent) bcp operations for connections made with a login. ">BCP_SETL()</a>, <a class="el" href="a00520.html#gaa23f8e5c7f437a94746c90292dd1cb01" title="Commit a set of rows to the table. ">bcp_batch()</a>, <a class="el" href="a00520.html#ga6cf03708baaf02eb016b9ee77160d879" title="Bind a program host variable to a database column. ">bcp_bind()</a>, <a class="el" href="a00520.html#ga0ed03c69e698336d015bb315ad755fd5" title="Specify the format of a datafile prior to writing to a table. ">bcp_colfmt()</a>, <a class="el" href="a00520.html#gaf13b2bb12b4200752718f3a3face3870" title="Specify the format of a host file for bulk copy purposes, with precision and scale support for numeri...">bcp_colfmt_ps()</a>, <a class="el" href="a00520.html#gae41d196a22c544d66212dacc5b555791" title="Set the length of a host variable to be written to a table. ">bcp_collen()</a>, <a class="el" href="a00520.html#ga6498235e4ef8e41ea43b01494b28998d" title="Override bcp_bind() by pointing to a different host variable. ">bcp_colptr()</a>, <a class="el" href="a00520.html#ga330b9f1028f856a9eec5115550bcb4f7" title="Indicate how many columns are to be found in the datafile. ">bcp_columns()</a>, <a class="el" href="a00520.html#ga244547855b41788fa3a67756956fbc81" title="Set BCP options for uploading a datafile. ">bcp_control()</a>, <a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#ga220f6b043602da1028f98dacb2fd00c0" title="See if BCP_SETL() was used to set the LOGINREC for BCP work. ">bcp_getl()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a>, bcp_moretext(), <a class="el" href="a00520.html#gafec3feb5bac1cb33545ba01efb0a67b8" title="Set "hints" for uploading a file. ">bcp_options()</a>, <a class="el" href="a00520.html#ga963c5e38bca7668afc57f5cc123d10fb" title="Read a format definition file. ">bcp_readfmt()</a>, <a class="el" href="a00520.html#gaf1130ac97f6af55e86ec70b0aa4f5b40" title="Write data in host variables to the table. ">bcp_sendrow()</a> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_gae67546338cb9542a4902aa914f57f314_cgraph.svg" width="279" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="gaf4e2c59203f2af21bb2803ef4a69bfa8"></a> <h2 class="memtitle"><span class="permalink"><a href="#gaf4e2c59203f2af21bb2803ef4a69bfa8">§ </a></span>_bcp_fgets()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static char* _bcp_fgets </td> <td>(</td> <td class="paramtype">char * </td> <td class="paramname"><em>buffer</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>size</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">FILE * </td> <td class="paramname"><em>f</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">buffer</td><td></td></tr> <tr><td class="paramname">size</td><td></td></tr> <tr><td class="paramname">f</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>SUCCEED or FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00517.html#ga5a626d228e82be0af8449d2b8c278241" title="Enable (or prevent) bcp operations for connections made with a login. ">BCP_SETL()</a>, <a class="el" href="a00520.html#gaa23f8e5c7f437a94746c90292dd1cb01" title="Commit a set of rows to the table. ">bcp_batch()</a>, <a class="el" href="a00520.html#ga6cf03708baaf02eb016b9ee77160d879" title="Bind a program host variable to a database column. ">bcp_bind()</a>, <a class="el" href="a00520.html#ga0ed03c69e698336d015bb315ad755fd5" title="Specify the format of a datafile prior to writing to a table. ">bcp_colfmt()</a>, <a class="el" href="a00520.html#gaf13b2bb12b4200752718f3a3face3870" title="Specify the format of a host file for bulk copy purposes, with precision and scale support for numeri...">bcp_colfmt_ps()</a>, <a class="el" href="a00520.html#gae41d196a22c544d66212dacc5b555791" title="Set the length of a host variable to be written to a table. ">bcp_collen()</a>, <a class="el" href="a00520.html#ga6498235e4ef8e41ea43b01494b28998d" title="Override bcp_bind() by pointing to a different host variable. ">bcp_colptr()</a>, <a class="el" href="a00520.html#ga330b9f1028f856a9eec5115550bcb4f7" title="Indicate how many columns are to be found in the datafile. ">bcp_columns()</a>, <a class="el" href="a00520.html#ga244547855b41788fa3a67756956fbc81" title="Set BCP options for uploading a datafile. ">bcp_control()</a>, <a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#ga220f6b043602da1028f98dacb2fd00c0" title="See if BCP_SETL() was used to set the LOGINREC for BCP work. ">bcp_getl()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a>, bcp_moretext(), <a class="el" href="a00520.html#gafec3feb5bac1cb33545ba01efb0a67b8" title="Set "hints" for uploading a file. ">bcp_options()</a>, <a class="el" href="a00520.html#ga963c5e38bca7668afc57f5cc123d10fb" title="Read a format definition file. ">bcp_readfmt()</a>, <a class="el" href="a00520.html#gaf1130ac97f6af55e86ec70b0aa4f5b40" title="Write data in host variables to the table. ">bcp_sendrow()</a> </dd></dl> </div> </div> <a id="gacf69ac4cbe8e3c3e6ea665e31e5e85b8"></a> <h2 class="memtitle"><span class="permalink"><a href="#gacf69ac4cbe8e3c3e6ea665e31e5e85b8">§ </a></span>_bcp_free_columns()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static void _bcp_free_columns </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> </table> </dd> </dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_gacf69ac4cbe8e3c3e6ea665e31e5e85b8_cgraph.svg" width="306" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="gaa134c1c3ccc4326e693adb8357272f1d"></a> <h2 class="memtitle"><span class="permalink"><a href="#gaa134c1c3ccc4326e693adb8357272f1d">§ </a></span>_bcp_free_storage()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static void _bcp_free_storage </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em></td><td>)</td> <td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server.</td></tr> </table> </dd> </dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_gaa134c1c3ccc4326e693adb8357272f1d_cgraph.svg" width="303" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="ga0f8def4cad04c5c1e27c2b653d482dd8"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga0f8def4cad04c5c1e27c2b653d482dd8">§ </a></span>_bcp_get_col_data()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static TDSRET _bcp_get_col_data </td> <td>(</td> <td class="paramtype"><a class="el" href="a01197.html">TDSBCPINFO</a> * </td> <td class="paramname"><em>bcpinfo</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a01133.html">TDSCOLUMN</a> * </td> <td class="paramname"><em>bindcol</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>offset</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>For a bcp in from program variables, get the data from the host variable. </p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> <tr><td class="paramname">bindcol</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>TDS_SUCCESS or TDS_FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd>_bcp_add_fixed_columns, _bcp_add_variable_columns, _bcp_send_bcp_record </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_ga0f8def4cad04c5c1e27c2b653d482dd8_cgraph.svg" width="304" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="gac82ffc5c1f71cbf453d81d1057004f1e"></a> <h2 class="memtitle"><span class="permalink"><a href="#gac82ffc5c1f71cbf453d81d1057004f1e">§ </a></span>_bcp_get_term_var()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static int _bcp_get_term_var </td> <td>(</td> <td class="paramtype">BYTE * </td> <td class="paramname"><em>pdata</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">BYTE * </td> <td class="paramname"><em>term</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>term_len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>Get the data for bcp-in from program variables, where the program data have been identified as character terminated, This is a low-level, internal function. </p> <p>Call it correctly.</p> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">pdata</td><td></td></tr> <tr><td class="paramname">term</td><td></td></tr> <tr><td class="paramname">term_len</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>data length. </dd></dl> </div> </div> <a id="ga065757a7d0dce354660900de4aa79e2f"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga065757a7d0dce354660900de4aa79e2f">§ </a></span>_bcp_read_hostfile()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static STATUS _bcp_read_hostfile </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">FILE * </td> <td class="paramname"><em>hostfile</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int * </td> <td class="paramname"><em>row_error</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> <tr><td class="paramname">hostfile</td><td></td></tr> <tr><td class="paramname">row_error</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>MORE_ROWS, NO_MORE_ROWS, or FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00517.html#ga5a626d228e82be0af8449d2b8c278241" title="Enable (or prevent) bcp operations for connections made with a login. ">BCP_SETL()</a>, <a class="el" href="a00520.html#gaa23f8e5c7f437a94746c90292dd1cb01" title="Commit a set of rows to the table. ">bcp_batch()</a>, <a class="el" href="a00520.html#ga6cf03708baaf02eb016b9ee77160d879" title="Bind a program host variable to a database column. ">bcp_bind()</a>, <a class="el" href="a00520.html#ga0ed03c69e698336d015bb315ad755fd5" title="Specify the format of a datafile prior to writing to a table. ">bcp_colfmt()</a>, <a class="el" href="a00520.html#gaf13b2bb12b4200752718f3a3face3870" title="Specify the format of a host file for bulk copy purposes, with precision and scale support for numeri...">bcp_colfmt_ps()</a>, <a class="el" href="a00520.html#gae41d196a22c544d66212dacc5b555791" title="Set the length of a host variable to be written to a table. ">bcp_collen()</a>, <a class="el" href="a00520.html#ga6498235e4ef8e41ea43b01494b28998d" title="Override bcp_bind() by pointing to a different host variable. ">bcp_colptr()</a>, <a class="el" href="a00520.html#ga330b9f1028f856a9eec5115550bcb4f7" title="Indicate how many columns are to be found in the datafile. ">bcp_columns()</a>, <a class="el" href="a00520.html#ga244547855b41788fa3a67756956fbc81" title="Set BCP options for uploading a datafile. ">bcp_control()</a>, <a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#ga220f6b043602da1028f98dacb2fd00c0" title="See if BCP_SETL() was used to set the LOGINREC for BCP work. ">bcp_getl()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a>, bcp_moretext(), <a class="el" href="a00520.html#gafec3feb5bac1cb33545ba01efb0a67b8" title="Set "hints" for uploading a file. ">bcp_options()</a>, <a class="el" href="a00520.html#ga963c5e38bca7668afc57f5cc123d10fb" title="Read a format definition file. ">bcp_readfmt()</a>, <a class="el" href="a00520.html#gaf1130ac97f6af55e86ec70b0aa4f5b40" title="Write data in host variables to the table. ">bcp_sendrow()</a> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_ga065757a7d0dce354660900de4aa79e2f_cgraph.svg" width="304" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="gafc23d62bc86b38fb757e3ac4aadca0a4"></a> <h2 class="memtitle"><span class="permalink"><a href="#gafc23d62bc86b38fb757e3ac4aadca0a4">§ </a></span>_bcp_readfmt_colinfo()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static int _bcp_readfmt_colinfo </td> <td>(</td> <td class="paramtype"><a class="el" href="a00901.html">DBPROCESS</a> * </td> <td class="paramname"><em>dbproc</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">char * </td> <td class="paramname"><em>buf</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype"><a class="el" href="a00877.html">BCP_HOSTCOLINFO</a> * </td> <td class="paramname"><em>ci</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">dbproc</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr> <tr><td class="paramname">buf</td><td></td></tr> <tr><td class="paramname">ci</td><td></td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>SUCCEED or FAIL. </dd></dl> <dl class="section see"><dt>See also</dt><dd><a class="el" href="a00517.html#ga5a626d228e82be0af8449d2b8c278241" title="Enable (or prevent) bcp operations for connections made with a login. ">BCP_SETL()</a>, <a class="el" href="a00520.html#gaa23f8e5c7f437a94746c90292dd1cb01" title="Commit a set of rows to the table. ">bcp_batch()</a>, <a class="el" href="a00520.html#ga6cf03708baaf02eb016b9ee77160d879" title="Bind a program host variable to a database column. ">bcp_bind()</a>, <a class="el" href="a00520.html#ga0ed03c69e698336d015bb315ad755fd5" title="Specify the format of a datafile prior to writing to a table. ">bcp_colfmt()</a>, <a class="el" href="a00520.html#gaf13b2bb12b4200752718f3a3face3870" title="Specify the format of a host file for bulk copy purposes, with precision and scale support for numeri...">bcp_colfmt_ps()</a>, <a class="el" href="a00520.html#gae41d196a22c544d66212dacc5b555791" title="Set the length of a host variable to be written to a table. ">bcp_collen()</a>, <a class="el" href="a00520.html#ga6498235e4ef8e41ea43b01494b28998d" title="Override bcp_bind() by pointing to a different host variable. ">bcp_colptr()</a>, <a class="el" href="a00520.html#ga330b9f1028f856a9eec5115550bcb4f7" title="Indicate how many columns are to be found in the datafile. ">bcp_columns()</a>, <a class="el" href="a00520.html#ga244547855b41788fa3a67756956fbc81" title="Set BCP options for uploading a datafile. ">bcp_control()</a>, <a class="el" href="a00520.html#ga8b85f79f53a62ac7a728fe626d609b65" title="Conclude the transfer of data from program variables. ">bcp_done()</a>, <a class="el" href="a00520.html#ga7a184158b27a50f713e9cfae3b746209" title="Write a datafile to a table. ">bcp_exec()</a>, <a class="el" href="a00520.html#ga220f6b043602da1028f98dacb2fd00c0" title="See if BCP_SETL() was used to set the LOGINREC for BCP work. ">bcp_getl()</a>, <a class="el" href="a00520.html#gada8e987c4a6225b9276c05ba3a4f47a0" title="Prepare for bulk copy operation on a table. ">bcp_init()</a>, bcp_moretext(), <a class="el" href="a00520.html#gafec3feb5bac1cb33545ba01efb0a67b8" title="Set "hints" for uploading a file. ">bcp_options()</a>, <a class="el" href="a00520.html#ga963c5e38bca7668afc57f5cc123d10fb" title="Read a format definition file. ">bcp_readfmt()</a>, <a class="el" href="a00520.html#gaf1130ac97f6af55e86ec70b0aa4f5b40" title="Write data in host variables to the table. ">bcp_sendrow()</a> </dd></dl> <div class="dynheader"> Here is the call graph for this function:</div> <div class="dyncontent"> <div class="center"><iframe scrolling="no" frameborder="0" src="a00521_gafc23d62bc86b38fb757e3ac4aadca0a4_cgraph.svg" width="319" height="38"><p><b>This browser is not able to show SVG: try Firefox, Chrome, Safari, or Opera instead.</b></p></iframe> </div> </div> </div> </div> <a id="ga4d5be57b25a0654e2170fd656dc35489"></a> <h2 class="memtitle"><span class="permalink"><a href="#ga4d5be57b25a0654e2170fd656dc35489">§ </a></span>rtrim()</h2> <div class="memitem"> <div class="memproto"> <table class="mlabels"> <tr> <td class="mlabels-left"> <table class="memname"> <tr> <td class="memname">static int rtrim </td> <td>(</td> <td class="paramtype">char * </td> <td class="paramname"><em>str</em>, </td> </tr> <tr> <td class="paramkey"></td> <td></td> <td class="paramtype">int </td> <td class="paramname"><em>len</em> </td> </tr> <tr> <td></td> <td>)</td> <td></td><td></td> </tr> </table> </td> <td class="mlabels-right"> <span class="mlabels"><span class="mlabel">static</span></span> </td> </tr> </table> </div><div class="memdoc"> <p>trim a string of trailing blanks </p> <p>Replaces spaces at the end of a string with NULs </p><dl class="params"><dt>Parameters</dt><dd> <table class="params"> <tr><td class="paramname">str</td><td>pointer to a character buffer (not null-terminated) </td></tr> <tr><td class="paramname">len</td><td>size of the <em>str</em> in bytes</td></tr> </table> </dd> </dl> <dl class="section return"><dt>Returns</dt><dd>modified length </dd></dl> </div> </div> </div><!-- contents --> <!-- start footer part --> <hr class="footer"/><address class="footer"><small> Generated by  <a href="http://www.doxygen.org/index.html"> <img class="footer" src="doxygen.png" alt="doxygen"/> </a> 1.8.12 </small></address> </body> </html>