<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"> <html><head><meta http-equiv="Content-Type" content="text/html;charset=iso-8859-1"> <title>FreeTDS API: ODBC utility</title> <link href="doxygen.css" rel="stylesheet" type="text/css"> </head><body> <!-- Generated by Doxygen 1.4.1 --> <div class="qindex"><a class="qindex" href="index.html">Main Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Class List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File List</a> | <a class="qindex" href="functions.html">Class Members</a> | <a class="qindex" href="globals.html">File Members</a> | <a class="qindex" href="pages.html">Related Pages</a></div> <h1>ODBC utility<br> <small> [<a class="el" href="a00283.html">ODBC API</a>]</small> </h1>Functions called within <code>ODBC</code> driver. <a href="#_details">More...</a><table border="0" cellpadding="0" cellspacing="0"> <tr><td></td></tr> <tr><td colspan="2"><br><h2>Defines</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga24" doxytag="odbc_util::C_TYPES"></a> #define </td><td class="memItemRight" valign="bottom"><b>C_TYPES</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">#define </td><td class="memItemRight" valign="bottom"><b>SQL_TYPES</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga23" doxytag="odbc_util::TYPE_NORMAL_SQL_C_GUID"></a> #define </td><td class="memItemRight" valign="bottom"><b>TYPE_NORMAL_SQL_C_GUID</b></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga21" doxytag="odbc_util::TYPE_NORMAL_SQL_GUID"></a> #define </td><td class="memItemRight" valign="bottom"><b>TYPE_NORMAL_SQL_GUID</b></td></tr> <tr><td colspan="2"><br><h2>Functions</h2></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga7" doxytag="odbc_util::odbc_c_to_server_type"></a> int </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga7">odbc_c_to_server_type</a> (int c_type)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Pass this an SQL_C_* type and get a SYB* type which most closely corresponds to the SQL_C_* type. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga18" doxytag="odbc_util::odbc_get_concise_c_type"></a> SQLSMALLINT </td><td class="memItemRight" valign="bottom"><b>odbc_get_concise_c_type</b> (SQLSMALLINT type, SQLSMALLINT interval)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga16" doxytag="odbc_util::odbc_get_concise_sql_type"></a> SQLSMALLINT </td><td class="memItemRight" valign="bottom"><b>odbc_get_concise_sql_type</b> (SQLSMALLINT type, SQLSMALLINT interval)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga20" doxytag="odbc_util::odbc_get_octet_len"></a> SQLLEN </td><td class="memItemRight" valign="bottom"><b>odbc_get_octet_len</b> (int c_type, const struct _drecord *drec)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga15" doxytag="odbc_util::odbc_get_param_len"></a> SQLINTEGER </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga15">odbc_get_param_len</a> (const struct _drecord *drec_axd, const struct _drecord *drec_ixd, const TDS_DESC *axd, unsigned int n_row)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Return length of parameter from parameter information. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga5" doxytag="odbc_util::odbc_get_string_size"></a> int </td><td class="memItemRight" valign="bottom"><b>odbc_get_string_size</b> (int size, SQLCHAR *str)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga14" doxytag="odbc_util::odbc_rdbms_version"></a> void </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga14">odbc_rdbms_version</a> (<a class="el" href="a00144.html">TDSSOCKET</a> *tds, char *pversion_string)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Returns the version of the RDBMS in the ODBC format. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga6" doxytag="odbc_util::odbc_server_to_sql_type"></a> SQLSMALLINT </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga6">odbc_server_to_sql_type</a> (int col_type, int col_size)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Convert type from database to ODBC. <br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">SQLRETURN </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga19">odbc_set_concise_c_type</a> (SQLSMALLINT concise_type, struct _drecord *drec, int check_only)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set concise type and all cascading field. <a href="#ga19"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">SQLRETURN </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga17">odbc_set_concise_sql_type</a> (SQLSMALLINT concise_type, struct _drecord *drec, int check_only)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Set concise type and all cascading field. <a href="#ga17"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga4" doxytag="odbc_util::odbc_set_return_params"></a> void </td><td class="memItemRight" valign="bottom"><b>odbc_set_return_params</b> (struct _hstmt *stmt, unsigned int n_row)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="odbc_util::odbc_set_return_status"></a> void </td><td class="memItemRight" valign="bottom"><b>odbc_set_return_status</b> (struct _hstmt *stmt, unsigned int n_row)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga8" doxytag="odbc_util::odbc_set_sql_type_info"></a> void </td><td class="memItemRight" valign="bottom"><b>odbc_set_sql_type_info</b> (<a class="el" href="a00140.html">TDSCOLUMN</a> *col, struct _drecord *drec, SQLINTEGER odbc_ver)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga0" doxytag="odbc_util::odbc_set_stmt"></a> static int </td><td class="memItemRight" valign="bottom"><b>odbc_set_stmt</b> (TDS_STMT *stmt, char **dest, const char *sql, int sql_len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="odbc_util::odbc_set_stmt_prepared_query"></a> int </td><td class="memItemRight" valign="bottom"><b>odbc_set_stmt_prepared_query</b> (TDS_STMT *stmt, const char *sql, int sql_len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga1" doxytag="odbc_util::odbc_set_stmt_query"></a> int </td><td class="memItemRight" valign="bottom"><b>odbc_set_stmt_query</b> (TDS_STMT *stmt, const char *sql, int sql_len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top">SQLRETURN </td><td class="memItemRight" valign="bottom"><a class="el" href="a00284.html#ga12">odbc_set_string</a> (SQLPOINTER buffer, SQLSMALLINT cbBuffer, SQLSMALLINT FAR *pcbBuffer, const char *s, int len)</td></tr> <tr><td class="mdescLeft"> </td><td class="mdescRight">Copy a string to client setting size according to ODBC convenction. <a href="#ga12"></a><br></td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga13" doxytag="odbc_util::odbc_set_string_i"></a> SQLRETURN </td><td class="memItemRight" valign="bottom"><b>odbc_set_string_i</b> (SQLPOINTER buffer, SQLINTEGER cbBuffer, SQLINTEGER FAR *pcbBuffer, const char *s, int len)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga10" doxytag="odbc_util::odbc_sql_to_c_type_default"></a> int </td><td class="memItemRight" valign="bottom"><b>odbc_sql_to_c_type_default</b> (int sql_type)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga9" doxytag="odbc_util::odbc_sql_to_displaysize"></a> SQLINTEGER </td><td class="memItemRight" valign="bottom"><b>odbc_sql_to_displaysize</b> (int sqltype, <a class="el" href="a00140.html">TDSCOLUMN</a> *col)</td></tr> <tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga11" doxytag="odbc_util::odbc_sql_to_server_type"></a> int </td><td class="memItemRight" valign="bottom"><b>odbc_sql_to_server_type</b> (<a class="el" href="a00144.html">TDSSOCKET</a> *tds, int sql_type)</td></tr> </table> <hr><a name="_details"></a><h2>Detailed Description</h2> Functions called within <code>ODBC</code> driver. <p> <hr><h2>Define Documentation</h2> <a class="anchor" name="ga22" doxytag="odbc_util.c::SQL_TYPES"></a><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">#define SQL_TYPES </td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> <b>Value:</b><div class="fragment"><pre class="fragment">TYPE_NORMAL(SQL_BIT) \ TYPE_NORMAL(SQL_SMALLINT) \ TYPE_NORMAL(SQL_TINYINT) \ TYPE_NORMAL(SQL_INTEGER) \ TYPE_NORMAL(SQL_BIGINT) \ \ TYPE_NORMAL_SQL_GUID \ \ TYPE_NORMAL(SQL_BINARY) \ TYPE_NORMAL(SQL_VARBINARY) \ TYPE_NORMAL(SQL_LONGVARBINARY) \ \ TYPE_NORMAL(SQL_CHAR) \ TYPE_NORMAL(SQL_VARCHAR) \ TYPE_NORMAL(SQL_LONGVARCHAR) \ \ TYPE_NORMAL(SQL_DECIMAL) \ TYPE_NORMAL(SQL_NUMERIC) \ \ TYPE_NORMAL(SQL_FLOAT) \ TYPE_NORMAL(SQL_REAL) \ TYPE_NORMAL(SQL_DOUBLE)\ \ TYPE_VERBOSE_START(SQL_DATETIME) \ TYPE_VERBOSE_DATE(SQL_DATETIME, SQL_CODE_TIMESTAMP, SQL_TYPE_TIMESTAMP, SQL_TIMESTAMP) \ TYPE_VERBOSE_END(SQL_DATETIME) </pre></div> </td> </tr> </table> <hr><h2>Function Documentation</h2> <a class="anchor" name="ga19" doxytag="odbc_util.c::odbc_set_concise_c_type"></a><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">SQLRETURN odbc_set_concise_c_type </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">SQLSMALLINT </td> <td class="mdname" nowrap> <em>concise_type</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>struct _drecord * </td> <td class="mdname" nowrap> <em>drec</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>check_only</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Set concise type and all cascading field. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>concise_type</em> </td><td>concise type to set </td></tr> <tr><td valign="top"></td><td valign="top"><em>drec</em> </td><td>record to set. NULL to test error without setting </td></tr> <tr><td valign="top"></td><td valign="top"><em>check_only</em> </td><td>it <>0 (true) check only, do not set type </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="ga17" doxytag="odbc_util.c::odbc_set_concise_sql_type"></a><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">SQLRETURN odbc_set_concise_sql_type </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">SQLSMALLINT </td> <td class="mdname" nowrap> <em>concise_type</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>struct _drecord * </td> <td class="mdname" nowrap> <em>drec</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>check_only</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Set concise type and all cascading field. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>concise_type</em> </td><td>concise type to set </td></tr> <tr><td valign="top"></td><td valign="top"><em>drec</em> </td><td>record to set. NULL to test error without setting </td></tr> <tr><td valign="top"></td><td valign="top"><em>check_only</em> </td><td>it <>0 (true) check only, do not set type </td></tr> </table> </dl> </td> </tr> </table> <a class="anchor" name="ga12" doxytag="odbc_util.c::odbc_set_string"></a><p> <table class="mdTable" cellpadding="2" cellspacing="0"> <tr> <td class="mdRow"> <table cellpadding="0" cellspacing="0" border="0"> <tr> <td class="md" nowrap valign="top">SQLRETURN odbc_set_string </td> <td class="md" valign="top">( </td> <td class="md" nowrap valign="top">SQLPOINTER </td> <td class="mdname" nowrap> <em>buffer</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>SQLSMALLINT </td> <td class="mdname" nowrap> <em>cbBuffer</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>SQLSMALLINT FAR * </td> <td class="mdname" nowrap> <em>pcbBuffer</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>const char * </td> <td class="mdname" nowrap> <em>s</em>, </td> </tr> <tr> <td class="md" nowrap align="right"></td> <td class="md"></td> <td class="md" nowrap>int </td> <td class="mdname" nowrap> <em>len</em></td> </tr> <tr> <td class="md"></td> <td class="md">) </td> <td class="md" colspan="2"></td> </tr> </table> </td> </tr> </table> <table cellspacing="5" cellpadding="0" border="0"> <tr> <td> </td> <td> <p> Copy a string to client setting size according to ODBC convenction. <p> <dl compact><dt><b>Parameters:</b></dt><dd> <table border="0" cellspacing="2" cellpadding="0"> <tr><td valign="top"></td><td valign="top"><em>buffer</em> </td><td>client buffer </td></tr> <tr><td valign="top"></td><td valign="top"><em>cbBuffer</em> </td><td>client buffer size (in bytes) </td></tr> <tr><td valign="top"></td><td valign="top"><em>pcbBuffer</em> </td><td>pointer to SQLSMALLINT to hold string size </td></tr> <tr><td valign="top"></td><td valign="top"><em>s</em> </td><td>string to copy </td></tr> <tr><td valign="top"></td><td valign="top"><em>len</em> </td><td>len of string to copy. <0 null terminated </td></tr> </table> </dl> </td> </tr> </table> <hr size="1"><address style="align: right;"><small>Generated on Wed May 7 19:22:11 2008 for FreeTDS API by <a href="http://www.doxygen.org/index.html"> <img src="doxygen.png" alt="doxygen" align="middle" border="0"></a> 1.4.1 </small></address> </body> </html>