Sophie

Sophie

distrib > Mageia > 1 > i586 > media > core-release > by-pkgid > f0bc842dcf666302badcfd2545f3387c > files > 51

libfreetds0-doc-0.82-12.mga1.i586.rpm

<!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: Primary functions</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&nbsp;Page</a> | <a class="qindex" href="modules.html">Modules</a> | <a class="qindex" href="annotated.html">Class&nbsp;List</a> | <a class="qindex" href="dirs.html">Directories</a> | <a class="qindex" href="files.html">File&nbsp;List</a> | <a class="qindex" href="functions.html">Class&nbsp;Members</a> | <a class="qindex" href="globals.html">File&nbsp;Members</a> | <a class="qindex" href="pages.html">Related&nbsp;Pages</a></div>
<h1>Primary functions<br>
<small>
[<a class="el" href="a00274.html">The db-lib API</a>]</small>
</h1>Core functions needed by most db-lib programs.  
<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">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga100">DBCMDROW</a>(x)&nbsp;&nbsp;&nbsp;dbcmdrow((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga100"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga101">DBCOUNT</a>(x)&nbsp;&nbsp;&nbsp;dbcount((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga101"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga102">DBCURCMD</a>(x)&nbsp;&nbsp;&nbsp;dbcurcmd((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga102"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga103">DBCURROW</a>(x)&nbsp;&nbsp;&nbsp;dbcurrow((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga103"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga104">DBDEAD</a>(x)&nbsp;&nbsp;&nbsp;dbdead((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga104"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga105">DBFIRSTROW</a>(x)&nbsp;&nbsp;&nbsp;dbfirstrow((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga105"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga106">DBIORDESC</a>(x)&nbsp;&nbsp;&nbsp;dbiordesc((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro, maps to the internal (lower-case) function.  <a href="#ga106"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga107">DBIOWDESC</a>(x)&nbsp;&nbsp;&nbsp;dbiowdesc((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro, maps to the internal (lower-case) function.  <a href="#ga107"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga108">DBISAVAIL</a>(x)&nbsp;&nbsp;&nbsp;dbisavail((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga108"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga109">DBLASTROW</a>(x)&nbsp;&nbsp;&nbsp;dblastrow((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga109"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga110">DBMORECMDS</a>(x)&nbsp;&nbsp;&nbsp;dbmorecmds((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga110"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga111">DBROWS</a>(x)&nbsp;&nbsp;&nbsp;dbrows((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga111"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga112">DBROWTYPE</a>(x)&nbsp;&nbsp;&nbsp;dbrowtype((x))</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro mapping to the Microsoft (lower-case) function.  <a href="#ga112"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga114">DBSETLCHARSET</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETCHARSET)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the client character set in the login packet.  <a href="#ga114"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga119">DBSETLENCRYPT</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetlbool((x), (y), DBSETENCRYPT)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Enable (or not) network password encryption for Sybase servers version 10.0 or above.  <a href="#ga119"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga116">dbsetlnatlang</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETNATLANG)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the language the server should use for messages.  <a href="#ga116"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga115">DBSETLNATLANG</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETNATLANG)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the language the server should use for messages.  <a href="#ga115"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga118">dbsetlpacket</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetllong((x), (y), DBSETPACKET)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the packet size in the login packet for new connections.  <a href="#ga118"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga117">DBSETLPACKET</a>(x, y)&nbsp;&nbsp;&nbsp;dbsetllong((x), (y), DBSETPACKET)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the packet size in the login packet for new connections.  <a href="#ga117"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga113">DBTDS</a>(a)&nbsp;&nbsp;&nbsp;dbtds(a)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Sybase macro, maps to the internal (lower-case) function.  <a href="#ga113"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">#define&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga99">SYBDBLIB</a>&nbsp;&nbsp;&nbsp;1</td></tr>

<tr><td colspan="2"><br><h2>Functions</h2></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">BYTE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga51">dbadata</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get address of compute column data.  <a href="#ga51"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga48">dbadlen</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get size of data in a compute column.  <a href="#ga48"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga50">dbaltbind</a> (DBPROCESS *dbproc, int computeid, int column, int vartype, DBINT varlen, BYTE *varaddr)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Bind a compute column to a program variable.  <a href="#ga50"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga47">dbaltcolid</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get column ID of a compute column.  <a href="#ga47"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga96">dbaltlen</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get size of data in compute column.  <a href="#ga96"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga52">dbaltop</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get aggregation operator for a compute column.  <a href="#ga52"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga49">dbalttype</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get datatype for a compute column.  <a href="#ga49"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga95">dbaltutype</a> (DBPROCESS *dbproc, int computeid, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get user-defined datatype of a compute column.  <a href="#ga95"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga22">dbanullbind</a> (DBPROCESS *dbproc, int computeid, int column, DBINT *indicator)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tie a null-indicator to a compute result column.  <a href="#ga22"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga19">dbbind</a> (DBPROCESS *dbproc, int column, int vartype, DBINT varlen, BYTE *varaddr)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tie a host variable to a resultset column.  <a href="#ga19"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">BYTE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga58">dbbylist</a> (DBPROCESS *dbproc, int computeid, int *size)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get <code>bylist</code> for a compute row.  <a href="#ga58"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga33">dbcancel</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cancel the current command batch.  <a href="#ga33"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga68">dbcanquery</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Cancel the query currently being retrieved, discarding all pending rows.  <a href="#ga68"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga91">dbchange</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See if a command caused the current database to change.  <a href="#ga91"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga8">dbclose</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close a connection to the server and free associated resources.  <a href="#ga8"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga23">dbclrbuf</a> (DBPROCESS *dbproc, DBINT n)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clear <em>n</em> rows from the row buffer.  <a href="#ga23"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga70">dbclropt</a> (DBPROCESS *dbproc, int option, char *param)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Reset an option.  <a href="#ga70"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga5">dbcmd</a> (DBPROCESS *dbproc, const char *cmdstring)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code>Append</code> SQL to the command buffer.  <a href="#ga5"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga29">dbcollen</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get size of a regular result column.  <a href="#ga29"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga12">dbcolname</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return name of a regular result column.  <a href="#ga12"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga28">dbcolsource</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get base database column name for a result set column.  <a href="#ga28"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga25">dbcoltype</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get the datatype of a regular result set column.  <a href="#ga25"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBTYPEINFO *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga27">dbcoltypeinfo</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get precision and scale information for a regular result column.  <a href="#ga27"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga26">dbcolutype</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get user-defined datatype of a regular result column.  <a href="#ga26"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga17">dbconvert</a> (DBPROCESS *dbproc, int srctype, const BYTE *src, DBINT srclen, int desttype, BYTE *dest, DBINT destlen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Convert one datatype to another.  <a href="#ga17"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga18">dbconvert_ps</a> (DBPROCESS *dbproc, int srctype, BYTE *src, DBINT srclen, int desttype, BYTE *dest, DBINT destlen, DBTYPEINFO *typeinfo)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">cf. <a class="el" href="a00275.html#ga17">dbconvert()</a>, above  <a href="#ga18"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">BYTE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga32">dbdata</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get address of data in a regular result column.  <a href="#ga32"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga61">dbdatecrack</a> (DBPROCESS *dbproc, DBDATEREC *di, DBDATETIME *datetime)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Break a DBDATETIME value into useful pieces.  <a href="#ga61"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga31">dbdatlen</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get size of current row's data in a regular result column.  <a href="#ga31"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">EHANDLEFUNC&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga59">dberrhandle</a> (EHANDLEFUNC handler)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set an error handler, for messages from db-lib.  <a href="#ga59"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga9">dbexit</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Close server connections and free all related structures.  <a href="#ga9"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga4">dbfcmd</a> (DBPROCESS *dbproc, const char *fmt,...)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight"><code>printf-like</code> way to form SQL to send to the server.  <a href="#ga4"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga69">dbfreebuf</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Erase the command buffer, in case <code>DBNOAUTOFREE</code> was set with <a class="el" href="a00275.html#ga53">dbsetopt()</a>.  <a href="#ga69"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga74">dbgetchar</a> (DBPROCESS *dbproc, int pos)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get address of a position in the command buffer.  <a href="#ga74"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga43">dbgetmaxprocs</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">get maximum simultaneous connections db-lib will open to the server.  <a href="#ga43"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga41">dbgetpacket</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get TDS packet size for the connection.  <a href="#ga41"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga13">dbgetrow</a> (DBPROCESS *dbproc, DBINT row)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read a row from the row buffer.  <a href="#ga13"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga45">dbgettime</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get maximum seconds db-lib waits for a server response to query.  <a href="#ga45"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">BYTE *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga66">dbgetuserdata</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get address of user-allocated data from a <code>DBPROCESS</code>.  <a href="#ga66"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga0">dbinit</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Initialize db-lib.  <a href="#ga0"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBBOOL&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga71">dbisopt</a> (DBPROCESS *dbproc, int option, char *param)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get value of an option.  <a href="#ga71"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">LOGINREC *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga1">dblogin</a> (void)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Allocate a <code>LOGINREC</code> structure.  <a href="#ga1"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga2" doxytag="dblib_core::dbloginfree"></a>
void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga2">dbloginfree</a> (LOGINREC *login)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">free the <code>LOGINREC</code> <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga72">dbmorecmds</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See if more commands are to be processed.  <a href="#ga72"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga83">dbmoretext</a> (DBPROCESS *dbproc, DBINT size, BYTE *text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send chunk of a text/image value to the server.  <a href="#ga83"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">MHANDLEFUNC&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga60">dbmsghandle</a> (MHANDLEFUNC handler)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set a message handler, for messages from the server.  <a href="#ga60"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga92">dbname</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get name of current database.  <a href="#ga92"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga16">dbnextrow</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Read result row into the row buffer and into any bound host variables.  <a href="#ga16"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga21">dbnullbind</a> (DBPROCESS *dbproc, int column, DBINT *indicator)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Tie a null-indicator to a regular result column.  <a href="#ga21"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga56">dbnumalts</a> (DBPROCESS *dbproc, int computeid)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get count of columns in a compute row.  <a href="#ga56"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga11">dbnumcols</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Return number of regular columns in a result set.  <a href="#ga11"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga57">dbnumcompute</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get count of <code>COMPUTE</code> clauses for a result set.  <a href="#ga57"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga97">dbpoll</a> (DBPROCESS *dbproc, long milliseconds, DBPROCESS **ready_dbproc, int *return_reason)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See if a server response has arrived.  <a href="#ga97"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga39">dbprhead</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print result set headings to stdout.  <a href="#ga39"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga36">dbprrow</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a result set to stdout.  <a href="#ga36"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga77">dbprtype</a> (int token)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a token value's name to a buffer.  <a href="#ga77"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">STATUS&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga82">dbreadtext</a> (DBPROCESS *dbproc, void *buf, DBINT bufsize)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Fetch part of a text or image value from the server.  <a href="#ga82"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga84">dbrecftos</a> (char *filename)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Record to a file all SQL commands sent to the server.  <a href="#ga84"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga90">dbregexec</a> (DBPROCESS *dbproc, DBUSMALLINT options)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Execute a registered procedure.  <a href="#ga90"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga87">dbreginit</a> (DBPROCESS *dbproc, DBCHAR *procedure_name, DBSMALLINT namelen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Ready execution of a registered procedure.  <a href="#ga87"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga88">dbreglist</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get names of Open Server registered procedures.  <a href="#ga88"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga89">dbregparam</a> (DBPROCESS *dbproc, char *param_name, int type, DBINT datalen, BYTE *data)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Describe parameter of registered procedure .  <a href="#ga89"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga10">dbresults</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set up query results.  <a href="#ga10"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga62">dbrpwclr</a> (LOGINREC *login)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Clear remote passwords from the LOGINREC structure.  <a href="#ga62"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga63">dbrpwset</a> (LOGINREC *login, char *srvname, char *password, int pwlen)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Add a remote password to the LOGINREC structure.  <a href="#ga63"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga76">dbsafestr</a> (DBPROCESS *dbproc, const char *src, DBINT srclen, char *dest, DBINT destlen, int quotetype)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">safely quotes character values in SQL text.  <a href="#ga76"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga93">dbservcharset</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get <code>syscharset</code> name of the server character set.  <a href="#ga93"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga86">dbsetdefcharset</a> (char *charset)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the default character set.  <a href="#ga86"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga40">dbsetdeflang</a> (char *language)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set the default character set for an application.  <a href="#ga40"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga20">dbsetifile</a> (char *filename)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">set name and location of the <code>interfaces</code> file FreeTDS should use to look up a servername.  <a href="#ga20"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga54">dbsetinterrupt</a> (DBPROCESS *dbproc, DB_DBCHKINTR_FUNC chkintr, DB_DBHNDLINTR_FUNC hndlintr)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set interrupt handler for db-lib to use while blocked against a read from the server.  <a href="#ga54"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga46">dbsetlogintime</a> (int seconds)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set maximum seconds db-lib waits for a server response to a login attempt.  <a href="#ga46"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top"><a class="anchor" name="ga3" doxytag="dblib_core::dbsetlversion"></a>
RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga3">dbsetlversion</a> (LOGINREC *login, BYTE version)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set TDS version for future connections. <br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga42">dbsetmaxprocs</a> (int maxprocs)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set maximum simultaneous connections db-lib will open to the server.  <a href="#ga42"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga14">dbsetnull</a> (DBPROCESS *dbproc, int bindtype, int bindlen, BYTE *bindval)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Define substitution values to be used when binding null values.  <a href="#ga14"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga53">dbsetopt</a> (DBPROCESS *dbproc, int option, const char *char_param, int int_param)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set db-lib or server option.  <a href="#ga53"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga15">dbsetrow</a> (DBPROCESS *dbproc, DBINT row)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Make a buffered row "current" without fetching it into bound variables.  <a href="#ga15"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga44">dbsettime</a> (int seconds)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Set maximum seconds db-lib waits for a server response to query.  <a href="#ga44"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">void&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga65">dbsetuserdata</a> (DBPROCESS *dbproc, BYTE *ptr)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Associate client-allocated (and defined) data with a <code>DBPROCESS</code>.  <a href="#ga65"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga67">dbsetversion</a> (DBINT version)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Specify a db-lib version level.  <a href="#ga67"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga64">dbspid</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get server process ID for a <code>DBPROCESS</code>.  <a href="#ga64"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga35">dbspr1row</a> (DBPROCESS *dbproc, char *buffer, DBINT buf_len)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print a regular result row to a buffer.  <a href="#ga35"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga34">dbspr1rowlen</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine size buffer required to hold the results returned by <a class="el" href="a00275.html#ga38">dbsprhead()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>, and <a class="el" href="a00275.html#ga35">dbspr1row()</a>.  <a href="#ga34"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga38">dbsprhead</a> (DBPROCESS *dbproc, char *buffer, DBINT buf_len)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Print result set headings to a buffer.  <a href="#ga38"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga37">dbsprline</a> (DBPROCESS *dbproc, char *buffer, DBINT buf_len, DBCHAR line_char)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get formatted string for underlining <a class="el" href="a00275.html#ga38">dbsprhead()</a> column names.  <a href="#ga37"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga6">dbsqlexec</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">send the SQL command to the server and wait for an answer.  <a href="#ga6"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga55">dbsqlok</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Wait for results of a query from the server.  <a href="#ga55"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga94">dbsqlsend</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Transmit the command buffer to the server. <em>Non-blocking</em>, does not wait for a response.  <a href="#ga94"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga98">dbstrbuild</a> (DBPROCESS *dbproc, char *charbuf, int bufsize, char *text, char *formats,...)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Build a printable string from text containing placeholders for variables.  <a href="#ga98"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga75">dbstrcpy</a> (DBPROCESS *dbproc, int start, int numbytes, char *dest)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get a copy of a chunk of the command buffer.  <a href="#ga75"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">int&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga73">dbstrlen</a> (DBPROCESS *dbproc)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get size of the command buffer, in bytes.  <a href="#ga73"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga78">dbtablecolinfo</a> (DBPROCESS *dbproc, DBINT column, DBCOL *pdbcol)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">describe table column attributes with a single call (Freetds-only API function modelled on dbcolinfo)  <a href="#ga78"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBBINARY *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga80">dbtxptr</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get text pointer for a column in the current row.  <a href="#ga80"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBBINARY *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga79">dbtxtimestamp</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Get text timestamp for a column in the current row.  <a href="#ga79"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga7">dbuse</a> (DBPROCESS *dbproc, const char *name)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Change current database.  <a href="#ga7"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBINT&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga30">dbvarylen</a> (DBPROCESS *dbproc, int column)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Determine whether a column can vary in size.  <a href="#ga30"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">const char *&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga85">dbversion</a> ()</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">See which version of db-lib is in use.  <a href="#ga85"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">DBBOOL&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga24">dbwillconvert</a> (int srctype, int desttype)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Test whether or not a datatype can be converted to another datatype.  <a href="#ga24"></a><br></td></tr>
<tr><td class="memItemLeft" nowrap align="right" valign="top">RETCODE&nbsp;</td><td class="memItemRight" valign="bottom"><a class="el" href="a00275.html#ga81">dbwritetext</a> (DBPROCESS *dbproc, char *objname, DBBINARY *textptr, DBTINYINT textptrlen, DBBINARY *timestamp, DBBOOL log, DBINT size, BYTE *text)</td></tr>

<tr><td class="mdescLeft">&nbsp;</td><td class="mdescRight">Send text or image data to the server.  <a href="#ga81"></a><br></td></tr>
</table>
<hr><a name="_details"></a><h2>Detailed Description</h2>
Core functions needed by most db-lib programs. 
<p>
<hr><h2>Define Documentation</h2>
<a class="anchor" name="ga100" doxytag="sybdb.h::DBCMDROW"></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">DBCMDROW          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbcmdrow((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga8">dbcmdrow()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga101" doxytag="sybdb.h::DBCOUNT"></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">DBCOUNT          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbcount((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga6">dbcount()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga102" doxytag="sybdb.h::DBCURCMD"></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">DBCURCMD          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbcurcmd((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga13">dbcurcmd()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga103" doxytag="sybdb.h::DBCURROW"></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">DBCURROW          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbcurrow((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga11">dbcurrow()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga104" doxytag="sybdb.h::DBDEAD"></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">DBDEAD          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbdead((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga9">dbdead()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga105" doxytag="sybdb.h::DBFIRSTROW"></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">DBFIRSTROW          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbfirstrow((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga15">dbfirstrow()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga106" doxytag="sybdb.h::DBIORDESC"></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">DBIORDESC          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbiordesc((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro, maps to the internal (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga17">dbiordesc()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga107" doxytag="sybdb.h::DBIOWDESC"></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">DBIOWDESC          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbiowdesc((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro, maps to the internal (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga18">dbiowdesc()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga108" doxytag="sybdb.h::DBISAVAIL"></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">DBISAVAIL          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbisavail((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd>dbisavail() </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga109" doxytag="sybdb.h::DBLASTROW"></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">DBLASTROW          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dblastrow((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga16">dblastrow()</a>, <a class="el" href="a00275.html#ga105">DBFIRSTROW()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga110" doxytag="sybdb.h::DBMORECMDS"></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">DBMORECMDS          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbmorecmds((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga72">dbmorecmds()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga111" doxytag="sybdb.h::DBROWS"></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">DBROWS          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbrows((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga7">dbrows()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga112" doxytag="sybdb.h::DBROWTYPE"></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">DBROWTYPE          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbrowtype((x))</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro mapping to the Microsoft (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga12">dbrowtype()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga114" doxytag="sybdb.h::DBSETLCHARSET"></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">DBSETLCHARSET          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETCHARSET)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the client character set in the login packet. 
<p>
<dl compact><dt><b>Remarks:</b></dt><dd>Has no effect on TDS 7.0+ connections. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga119" doxytag="sybdb.h::DBSETLENCRYPT"></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">DBSETLENCRYPT          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetlbool((x), (y), DBSETENCRYPT)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Enable (or not) network password encryption for Sybase servers version 10.0 or above. 
<p>
<dl compact><dt><b><a class="el" href="todo.html#_todo000048">Todo:</a></b></dt><dd>Unimplemented.</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd>dbsetlencrypt() </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga116" doxytag="sybdb.h::dbsetlnatlang"></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">dbsetlnatlang          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETNATLANG)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the language the server should use for messages. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga115">DBSETLNATLANG()</a>, <a class="el" href="a00281.html#ga1">dbsetlname()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga115" doxytag="sybdb.h::DBSETLNATLANG"></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">DBSETLNATLANG          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetlname((x), (y), DBSETNATLANG)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the language the server should use for messages. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga116">dbsetlnatlang()</a>, <a class="el" href="a00281.html#ga1">dbsetlname()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga118" doxytag="sybdb.h::dbsetlpacket"></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">dbsetlpacket          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetllong((x), (y), DBSETPACKET)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the packet size in the login packet for new connections. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga117">DBSETLPACKET()</a>, <a class="el" href="a00281.html#ga2">dbsetllong()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga117" doxytag="sybdb.h::DBSETLPACKET"></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">DBSETLPACKET          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">x,         <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>y&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbsetllong((x), (y), DBSETPACKET)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the packet size in the login packet for new connections. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga118">dbsetlpacket()</a>, <a class="el" href="a00281.html#ga2">dbsetllong()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga113" doxytag="sybdb.h::DBTDS"></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">DBTDS          </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">a&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap>&nbsp;&nbsp;&nbsp;dbtds(a)</td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Sybase macro, maps to the internal (lower-case) function. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00281.html#ga14">dbtds()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga99" doxytag="dblib.c::SYBDBLIB"></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 SYBDBLIB&nbsp;&nbsp;&nbsp;1          </td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<dl compact><dt><b>Remarks:</b></dt><dd>Either SYBDBLIB or MSDBLIB (not both) must be defined. This affects how certain application-addressable strucures are defined. </dd></dl>
    </td>
  </tr>
</table>
<hr><h2>Function Documentation</h2>
<a class="anchor" name="ga51" doxytag="dblib.c::dbadata"></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">BYTE* dbadata           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get address of compute column data. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>pointer to columns's data buffer. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td>no such <em>computeid</em> or <em>column</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga48" doxytag="dblib.c::dbadlen"></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">DBINT dbadlen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of data in a compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>size of the data, in bytes. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>-1</em>&nbsp;</td><td>no such <em>column</em> or <em>computeid</em>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>0</em>&nbsp;</td><td>data are NULL. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga50" doxytag="dblib.c::dbaltbind"></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">RETCODE dbaltbind           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>vartype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>varlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>varaddr</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Bind a compute column to a program variable. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vartype</em>&nbsp;</td><td>datatype of the host variable that will receive the data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>varlen</em>&nbsp;</td><td>size of host variable pointed to <em>varaddr</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>varaddr</em>&nbsp;</td><td>address of host variable </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>no such <em>computeid</em> or <em>column</em>, or no such conversion possible, or target buffer too small. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, dbaltbind_ps(), <a class="el" href="a00275.html#ga22">dbanullbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, dbbind_ps(), <a class="el" href="a00275.html#ga17">dbconvert()</a>, <a class="el" href="a00275.html#ga18">dbconvert_ps()</a>, <a class="el" href="a00275.html#ga21">dbnullbind()</a>, <a class="el" href="a00275.html#ga14">dbsetnull()</a>, <a class="el" href="a00275.html#ga67">dbsetversion()</a>, <a class="el" href="a00275.html#ga24">dbwillconvert()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga47" doxytag="dblib.c::dbaltcolid"></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">int dbaltcolid           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get column ID of a compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>Nth column in the base result set, on which <em>column</em> was computed. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga96" doxytag="dblib.c::dbaltlen"></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">DBINT dbaltlen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of data in compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga52" doxytag="dblib.c::dbaltop"></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">int dbaltop           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get aggregation operator for a compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>token value for the type of the compute column's aggregation operator. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>-1</em>&nbsp;</td><td>no such <em>computeid</em> or <em>column</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga49" doxytag="dblib.c::dbalttype"></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">int dbalttype           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get datatype for a compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><code>SYB*</code> dataype token. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>-1</em>&nbsp;</td><td>no such <em>column</em> or <em>computeid</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga95" doxytag="dblib.c::dbaltutype"></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">DBINT dbaltutype           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get user-defined datatype of a compute column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in <em>computeid</em>, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>user-defined datatype of compute column, else -1. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga26">dbcolutype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga22" doxytag="dblib.c::dbanullbind"></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">RETCODE dbanullbind           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT *&nbsp;</td>
          <td class="mdname" nowrap> <em>indicator</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Tie a null-indicator to a compute result column. 
<p>
When a row is fetched, the indicator variable tells the state of the column's data.<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>identifies which one of potientially many compute rows is meant. The first compute clause has <em>computeid</em> == 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in the result set, starting with 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>indicator</em>&nbsp;</td><td>address of host variable. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>variable accepted. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td><em>indicator</em> is NULL or <em>column</em> is out of range. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Contents of <em>indicator</em> are set with <code><a class="el" href="a00275.html#ga16">dbnextrow()</a></code>. Possible values are:<ul>
<li>0 <em>column</em> bound successfully</li><li>-1 <em>column</em> is NULL.</li><li>&gt;0 true length of data, had <em>column</em> not been truncated due to insufficient space in the columns bound host variable . </li></ul>
</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga21">dbnullbind()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000014">Todo:</a></b></dt><dd>Never fails, but only because failure conditions aren't checked. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga19" doxytag="dblib.c::dbbind"></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">RETCODE dbbind           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>vartype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>varlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>varaddr</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Tie a host variable to a resultset column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column, starting at 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>vartype</em>&nbsp;</td><td>datatype of the host variable that will receive the data </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>varlen</em>&nbsp;</td><td>size of host variable pointed to <em>varaddr</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>varaddr</em>&nbsp;</td><td>address of host variable </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>no such <em>column</em> or no such conversion possible, or target buffer too small. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga58" doxytag="dblib.c::dbbylist"></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">BYTE* dbbylist           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int *&nbsp;</td>
          <td class="mdname" nowrap> <em>size</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get <code>bylist</code> for a compute row. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td><em>output:</em> size of <code>bylist</code> buffer whose address is returned, possibly zero. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>address of <code>bylist</code> for <em>computeid</em>. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td>no such <em>computeid</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Do not free returned pointer. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga33" doxytag="dblib.c::dbcancel"></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">RETCODE dbcancel           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Cancel the current command batch. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga68">dbcanquery()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00275.html#ga54">dbsetinterrupt()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000016">Todo:</a></b></dt><dd>Check for failure and return accordingly. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga68" doxytag="dblib.c::dbcanquery"></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">RETCODE dbcanquery           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Cancel the query currently being retrieved, discarding all pending rows. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga91" doxytag="dblib.c::dbchange"></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">char* dbchange           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
See if a command caused the current database to change. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>name of new database, if changed, as a null-terminated ASCII string, else <code>NULL</code>.</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga92">dbname()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>, <a class="el" href="a00275.html#ga7">dbuse()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga8" doxytag="dblib.c::dbclose"></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">void dbclose           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Close a connection to the server and free associated resources. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga9">dbexit()</a>, dbopen(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga23" doxytag="dblib.c::dbclrbuf"></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">void dbclrbuf           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>n</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Clear <em>n</em> rows from the row buffer. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>n</em>&nbsp;</td><td>number of rows to remove, &gt;= 0. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga53">dbsetopt()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga70" doxytag="dblib.c::dbclropt"></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">RETCODE dbclropt           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>option</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>param</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Reset an option. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>option</em>&nbsp;</td><td>to be turned off. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>clearing some options requires a parameter, believe it or not. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td><em>option</em> and <em>parameter</em> seem sane. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>no such <em>option</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Only the following options are recognized:<ul>
<li>DBARITHABORT</li><li>DBARITHIGNORE</li><li>DBCHAINXACTS</li><li>DBFIPSFLAG</li><li>DBISOLATION</li><li>DBNOCOUNT</li><li>DBNOEXEC</li><li>DBPARSEONLY</li><li>DBSHOWPLAN</li><li>DBSTORPROCID</li><li>DBQUOTEDIDENT </li></ul>
</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga71">dbisopt()</a>, <a class="el" href="a00275.html#ga53">dbsetopt()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga5" doxytag="dblib.c::dbcmd"></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">RETCODE dbcmd           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>cmdstring</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<code>Append</code> SQL to the command buffer. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>cmdstring</em>&nbsp;</td><td>SQL to append to the command buffer. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>success. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>insufficient memory. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>set command state to <code>DBCMDPEND</code> unless the command state is DBCMDSENT, in which case it frees the command buffer. This latter may or may not be the Right Thing to do. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga69">dbfreebuf()</a>, <a class="el" href="a00275.html#ga74">dbgetchar()</a>, dbopen(), <a class="el" href="a00275.html#ga75">dbstrcpy()</a>, <a class="el" href="a00275.html#ga73">dbstrlen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga29" doxytag="dblib.c::dbcollen"></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">DBINT dbcollen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>size of the column (not of data in any particular row). On error, -1. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga12" doxytag="dblib.c::dbcolname"></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">char* dbcolname           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return name of a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting with 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>pointer to ASCII null-terminated string, the name of the column. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td><em>column</em> is not in range. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>. </dd></dl>
<p>
<dl compact><dt><b><a class="el" href="bug.html#_bug000001">Bug:</a></b></dt><dd>Relies on ASCII column names, post iconv conversion. Will not work as described for UTF-8 or UCS-2 clients. But maybe it shouldn't. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga28" doxytag="dblib.c::dbcolsource"></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">char* dbcolsource           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get base database column name for a result set column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>pointer to ASCII null-terminated string, the name of the column. On error, NULL. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd>dbcolbrowse(), dbqual(), dbtabbrowse(), dbtabcount(), dbtabname(), dbtabsource(), dbtsnewlen(), dbtsnewval(), dbtsput(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga25" doxytag="dblib.c::dbcoltype"></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">int dbcoltype           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get the datatype of a regular result set column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><code>SYB*</code> datetype token value, or zero if <em>column</em> out of range </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>, <a class="el" href="a00275.html#ga30">dbvarylen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga27" doxytag="dblib.c::dbcoltypeinfo"></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">DBTYPEINFO* dbcoltypeinfo           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get precision and scale information for a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>, <a class="el" href="a00275.html#ga30">dbvarylen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga26" doxytag="dblib.c::dbcolutype"></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">int dbcolutype           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get user-defined datatype of a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><code>SYB*</code> datetype token value, or -1 if <em>column</em> out of range </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga95">dbaltutype()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga17" doxytag="dblib.c::dbconvert"></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">DBINT dbconvert           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>srctype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>srclen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>desttype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>destlen</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Convert one datatype to another. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srctype</em>&nbsp;</td><td>datatype of the data to convert. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>buffer to convert </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srclen</em>&nbsp;</td><td>length of <em>src</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>desttype</em>&nbsp;</td><td>target datatype </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>output buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destlen</em>&nbsp;</td><td>size of <em>dest</em> </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>On success, the count of output bytes in <em>dest</em>, else -1. On failure, it will call any user-supplied error handler. </dd></dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Causes of failure:<ul>
<li>No such conversion unavailable.</li><li>Character data output was truncated, or numerical data overflowed or lost precision.</li><li>In converting character data to one of the numeric types, the string could not be interpreted as a number.</li></ul>
</dd></dl>
Conversion functions are handled in the TDS layer.<p>
The main reason for this is that <code>ct-lib</code> and <code>ODBC</code> (and presumably <code>DBI</code>) need to be able to do conversions between datatypes. This is possible because the format of complex data (dates, money, numeric, decimal) is defined by its representation on the wire; thus what we call <code>DBMONEY</code> is exactly its format on the wire. CLIs that need a different representation (ODBC?) need to convert from this format anyway, so the code would already be in place.<p>
Each datatype is also defined by its Server-type so all CLIs should be able to map native types to server types as well.<p>
<a class="el" href="a00287.html#ga35">tds_convert()</a> copies from src to dest and returns the output data length, period. All padding and termination is the responsibility of the API library and is done post-conversion. The peculiar rule in <a class="el" href="a00275.html#ga17">dbconvert()</a> is that a <em>destlen</em> of -1 and a <em>desttype</em> of <code>SYBCHAR</code> means the output buffer should be null-terminated.<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, dbaltbind_ps(), <a class="el" href="a00275.html#ga19">dbbind()</a>, dbbind_ps(), <a class="el" href="a00275.html#ga18">dbconvert_ps()</a>, <a class="el" href="a00275.html#ga59">dberrhandle()</a>, <a class="el" href="a00275.html#ga14">dbsetnull()</a>, <a class="el" href="a00275.html#ga67">dbsetversion()</a>, <a class="el" href="a00275.html#ga24">dbwillconvert()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>What happens if client does not reset values?</dd></dl>
<p>
<dl compact><dt><b><a class="el" href="todo.html#_todo000012">Todo:</a></b></dt><dd>Microsoft and Sybase define this function differently. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga18" doxytag="dblib.c::dbconvert_ps"></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">DBINT dbconvert_ps           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>srctype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>srclen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>desttype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>destlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBTYPEINFO *&nbsp;</td>
          <td class="mdname" nowrap> <em>typeinfo</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
cf. <a class="el" href="a00275.html#ga17">dbconvert()</a>, above 
<p>
<em>Sybase:</em> Convert numeric types. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srctype</em>&nbsp;</td><td>datatype of the data to convert. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>buffer to convert </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srclen</em>&nbsp;</td><td>length of <em>src</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>desttype</em>&nbsp;</td><td>target datatype </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td>output buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destlen</em>&nbsp;</td><td>size of <em>dest</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>typeinfo</em>&nbsp;</td><td>address of a <code>DBTYPEINFO</code> structure that governs the precision &amp; scale of the output, may be <code>NULL</code>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, dbaltbind_ps(), <a class="el" href="a00275.html#ga19">dbbind()</a>, dbbind_ps(), <a class="el" href="a00275.html#ga17">dbconvert()</a>, <a class="el" href="a00275.html#ga59">dberrhandle()</a>, <a class="el" href="a00275.html#ga14">dbsetnull()</a>, <a class="el" href="a00275.html#ga67">dbsetversion()</a>, <a class="el" href="a00275.html#ga24">dbwillconvert()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga32" doxytag="dblib.c::dbdata"></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">BYTE* dbdata           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get address of data in a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>pointer the data, or NULL if data are NULL, or if <em>column</em> is out of range. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga61" doxytag="dblib.c::dbdatecrack"></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">RETCODE dbdatecrack           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBDATEREC *&nbsp;</td>
          <td class="mdname" nowrap> <em>di</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBDATETIME *&nbsp;</td>
          <td class="mdname" nowrap> <em>datetime</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Break a DBDATETIME value into useful pieces. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>di</em>&nbsp;</td><td><em>output:</em> structure to contain the exploded parts of <em>datetime</em>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>datetime</em>&nbsp;</td><td><em>input:</em> <code>DBDATETIME</code> to be converted. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>The members of <em>di</em> have different names, depending on whether <code>--with-msdblib</code> was configured. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga17">dbconvert()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, dbdatechar(), dbdatename(), dbdatepart(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga31" doxytag="dblib.c::dbdatlen"></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">DBINT dbdatlen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of current row's data in a regular result column. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>size of the data, in bytes. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga59" doxytag="dblib.c::dberrhandle"></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">EHANDLEFUNC dberrhandle           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">EHANDLEFUNC&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>handler</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set an error handler, for messages from db-lib. 
<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>handler</em>&nbsp;</td><td>pointer to callback function that will handle errors. Pass NULL to restore the default handler. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>address of prior handler, or NULL if none was previously installed. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga104">DBDEAD()</a>, <a class="el" href="a00275.html#ga60">dbmsghandle()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga9" doxytag="dblib.c::dbexit"></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">void dbexit           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Close server connections and free all related structures. 
<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga8">dbclose()</a>, <a class="el" href="a00275.html#ga0">dbinit()</a>, dbopen(). </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000011">Todo:</a></b></dt><dd>breaks if ctlib/dblib used in same process. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga4" doxytag="dblib.c::dbfcmd"></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">RETCODE dbfcmd           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>fmt</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>&nbsp;</td>
          <td class="mdname" nowrap> <em>...</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
<code>printf-like</code> way to form SQL to send to the server. 
<p>
Forms a command string and writes to the command buffer with <a class="el" href="a00275.html#ga5">dbcmd()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>fmt</em>&nbsp;</td><td><code> man vasprintf</code> for details. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>success. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>insufficient memory, or <a class="el" href="a00275.html#ga5">dbcmd()</a> failed. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga69">dbfreebuf()</a>, <a class="el" href="a00275.html#ga74">dbgetchar()</a>, dbopen(), <a class="el" href="a00275.html#ga75">dbstrcpy()</a>, <a class="el" href="a00275.html#ga73">dbstrlen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga69" doxytag="dblib.c::dbfreebuf"></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">void dbfreebuf           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Erase the command buffer, in case <code>DBNOAUTOFREE</code> was set with <a class="el" href="a00275.html#ga53">dbsetopt()</a>. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga74">dbgetchar()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>, <a class="el" href="a00275.html#ga53">dbsetopt()</a>, <a class="el" href="a00275.html#ga75">dbstrcpy()</a>, <a class="el" href="a00275.html#ga73">dbstrlen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga74" doxytag="dblib.c::dbgetchar"></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">char* dbgetchar           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>pos</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get address of a position in the command buffer. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pos</em>&nbsp;</td><td>offset within the command buffer, starting at <em>0</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>A bit overspecialized, this one. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga69">dbfreebuf()</a>, <a class="el" href="a00275.html#ga75">dbstrcpy()</a>, <a class="el" href="a00275.html#ga73">dbstrlen()</a>, </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga43" doxytag="dblib.c::dbgetmaxprocs"></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">int dbgetmaxprocs           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
get maximum simultaneous connections db-lib will open to the server. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>Current maximum. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga42">dbsetmaxprocs()</a>, dbopen() </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga41" doxytag="dblib.c::dbgetpacket"></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">int dbgetpacket           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get TDS packet size for the connection. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>TDS packet size, in bytes. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga117">DBSETLPACKET()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga13" doxytag="dblib.c::dbgetrow"></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">RETCODE dbgetrow           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>row</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Read a row from the row buffer. 
<p>
When row buffering is enabled (DBBUFFER option is on), the client can use <a class="el" href="a00275.html#ga13">dbgetrow()</a> to re-read a row previously fetched with <a class="el" href="a00275.html#ga16">dbnextrow()</a>. The effect is to move the row pointer -- analogous to fseek() -- back to <em>row</em>. Calls to <a class="el" href="a00275.html#ga16">dbnextrow()</a> read from <em>row</em> + 1 until the buffer is exhausted, at which point it resumes its normal behavior, except that as each row is fetched from the server, it is added to the row buffer (in addition to being returned to the client). When the buffer is filled, <a class="el" href="a00275.html#ga16">dbnextrow()</a> returns <code>FAIL</code> until the buffer is at least partially emptied with <a class="el" href="a00275.html#ga23">dbclrbuf()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>row</em>&nbsp;</td><td>Nth row to read, starting with 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>REG_ROW</em>&nbsp;</td><td>returned row is a regular row. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>computeid when returned row is a compute row. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NO_MORE_ROWS</em>&nbsp;</td><td>no such row in the row buffer. Current row is unchanged. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>unsuccessful; row buffer may be full. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga23">dbclrbuf()</a>, <a class="el" href="a00275.html#ga103">DBCURROW()</a>, <a class="el" href="a00275.html#ga105">DBFIRSTROW()</a>, <a class="el" href="a00275.html#ga109">DBLASTROW()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga15">dbsetrow()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga45" doxytag="dblib.c::dbgettime"></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">int dbgettime           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get maximum seconds db-lib waits for a server response to query. 
<p>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>query</em>&nbsp;</td><td>timeout limit, in seconds </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga59">dberrhandle()</a>, DBSETTIME(), <a class="el" href="a00275.html#ga46">dbsetlogintime()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga66" doxytag="dblib.c::dbgetuserdata"></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">BYTE* dbgetuserdata           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get address of user-allocated data from a <code>DBPROCESS</code>. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>address of user-defined data that <code>db-lib</code> associated with <em>dbproc</em> when the client called <a class="el" href="a00275.html#ga65">dbsetuserdata()</a>. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>undefined</em>&nbsp;</td><td>(probably <code>NULL</code>) <a class="el" href="a00275.html#ga65">dbsetuserdata()</a> was not previously called. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga65">dbsetuserdata()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga0" doxytag="dblib.c::dbinit"></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">RETCODE dbinit           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Initialize db-lib. 
<p>
<dl compact><dt><b>Remarks:</b></dt><dd>Call this function before trying to use db-lib in any way. Allocates various internal structures and reads <code>locales.conf</code> (if any) to determine the default date format. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>normal. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>cannot allocate an array of <code>TDS_MAX_CONN</code> <code>TDSSOCKET</code> pointers. </td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga71" doxytag="dblib.c::dbisopt"></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">DBBOOL dbisopt           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>option</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>param</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get value of an option. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>option</em>&nbsp;</td><td>the option </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>param</em>&nbsp;</td><td>a parameter to <em>option</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga70">dbclropt()</a>, <a class="el" href="a00275.html#ga53">dbsetopt()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga1" doxytag="dblib.c::dblogin"></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">LOGINREC* dblogin           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Allocate a <code>LOGINREC</code> structure. 
<p>
<dl compact><dt><b>Remarks:</b></dt><dd>A <code>LOGINREC</code> structure is passed to <code>dbopen()</code> to create a connection to the database. Does not communicate to the server; interacts strictly with library. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>NULL</em>&nbsp;</td><td>the <code>LOGINREC</code> cannot be allocated. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>LOGINREC*</em>&nbsp;</td><td>to valid memory, otherwise. </td></tr>
  </table>
</dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga72" doxytag="dblib.c::dbmorecmds"></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">RETCODE dbmorecmds           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
See if more commands are to be processed. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga110">DBMORECMDS()</a>. <a class="el" href="a00275.html#ga100">DBCMDROW()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00275.html#ga111">DBROWS()</a>, <a class="el" href="a00275.html#ga112">DBROWTYPE()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga83" doxytag="dblib.c::dbmoretext"></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">RETCODE dbmoretext           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>text</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Send chunk of a text/image value to the server. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>count of bytes to send. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>textpointer, obtained from dbtxptr. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga80">dbtxptr()</a>, <a class="el" href="a00275.html#ga79">dbtxtimestamp()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000034">Todo:</a></b></dt><dd>Check return value of called functions and return <code>FAIL</code> if appropriate. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga60" doxytag="dblib.c::dbmsghandle"></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">MHANDLEFUNC dbmsghandle           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">MHANDLEFUNC&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>handler</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set a message handler, for messages from the server. 
<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>handler</em>&nbsp;</td><td>address of the function that will process the messages. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga104">DBDEAD()</a>, <a class="el" href="a00275.html#ga59">dberrhandle()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga92" doxytag="dblib.c::dbname"></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">char* dbname           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get name of current database. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>current database name, as null-terminated ASCII string. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga91">dbchange()</a>, <a class="el" href="a00275.html#ga7">dbuse()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga16" doxytag="dblib.c::dbnextrow"></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">RETCODE dbnextrow           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Read result row into the row buffer and into any bound host variables. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>REG_ROW</em>&nbsp;</td><td>regular row has been read. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>computeid when a compute row is read. </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>BUF_FULL</em>&nbsp;</td><td>reading next row would cause the buffer to be exceeded (and buffering is turned on). No row was read from the server </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga68">dbcanquery()</a>, <a class="el" href="a00275.html#ga23">dbclrbuf()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>, <a class="el" href="a00275.html#ga15">dbsetrow()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga21" doxytag="dblib.c::dbnullbind"></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">RETCODE dbnullbind           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT *&nbsp;</td>
          <td class="mdname" nowrap> <em>indicator</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Tie a null-indicator to a regular result column. 
<p>
When a row is fetched, the indicator variable tells the state of the column's data.<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth column in the result set, starting with 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>indicator</em>&nbsp;</td><td>address of host variable. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>variable accepted. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td><em>indicator</em> is NULL or <em>column</em> is out of range. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Contents of <em>indicator</em> are set with <code><a class="el" href="a00275.html#ga16">dbnextrow()</a></code>. Possible values are:<ul>
<li>0 <em>column</em> bound successfully</li><li>-1 <em>column</em> is NULL.</li><li>&gt;0 true length of data, had <em>column</em> not been truncated due to insufficient space in the columns bound host variable . </li></ul>
</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga22">dbanullbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga56" doxytag="dblib.c::dbnumalts"></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">int dbnumalts           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>computeid</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get count of columns in a compute row. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>computeid</em>&nbsp;</td><td>of <code>COMPUTE</code> clause to which we're referring. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>number of columns, else -1 if no such <em>computeid</em>. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga51">dbadata()</a>, <a class="el" href="a00275.html#ga48">dbadlen()</a>, <a class="el" href="a00275.html#ga96">dbaltlen()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga11" doxytag="dblib.c::dbnumcols"></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">int dbnumcols           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Return number of regular columns in a result set. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga56">dbnumalts()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga57" doxytag="dblib.c::dbnumcompute"></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">int dbnumcompute           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get count of <code>COMPUTE</code> clauses for a result set. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>number of compute clauses for the current query, possibly zero. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga56">dbnumalts()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga97" doxytag="dblib.c::dbpoll"></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">RETCODE dbpoll           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>long&nbsp;</td>
          <td class="mdname" nowrap> <em>milliseconds</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBPROCESS **&nbsp;</td>
          <td class="mdname" nowrap> <em>ready_dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int *&nbsp;</td>
          <td class="mdname" nowrap> <em>return_reason</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
See if a server response has arrived. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>milliseconds</em>&nbsp;</td><td>how long to wait for the server before returning:<ul>
<li><code>0</code> return immediately.</li><li><code>-1</code> do not return until the server responds or a system interrupt occurs. </li></ul>
</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ready_dbproc</em>&nbsp;</td><td><em>output:</em> DBPROCESS for which a response arrived, of <code>NULL</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>return_reason</em>&nbsp;</td><td><em>output:</em> <ul>
<li><code>DBRESULT</code> server responded.</li><li><code>DBNOTIFICATION</code> registered procedure notification has arrived. <a class="el" href="a00275.html#ga97">dbpoll()</a> the registered handler, if any, before it returns.</li><li><code>DBTIMEOUT</code> <em>milliseconds</em> elapsed before the server responded.</li><li><code>DBINTERRUPT</code> operating-system interrupt occurred before the server responded. </li></ul>
</td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>a server connection died. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga106">DBIORDESC()</a>, DBRBUF(), <a class="el" href="a00275.html#ga10">dbresults()</a>, dbreghandle(), <a class="el" href="a00275.html#ga55">dbsqlok()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000040">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga39" doxytag="dblib.c::dbprhead"></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">void dbprhead           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Print result set headings to stdout. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga36" doxytag="dblib.c::dbprrow"></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">RETCODE dbprrow           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Print a result set to stdout. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga39">dbprhead()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00275.html#ga35">dbspr1row()</a>, <a class="el" href="a00275.html#ga38">dbsprhead()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga77" doxytag="dblib.c::dbprtype"></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">const char* dbprtype           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>token</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Print a token value's name to a buffer. 
<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>token</em>&nbsp;</td><td>server SYB* value, e.g. SYBINT.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>ASCII null-terminated string. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga52">dbaltop()</a>, <a class="el" href="a00275.html#ga49">dbalttype()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00276.html#ga6">dbrettype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga82" doxytag="dblib.c::dbreadtext"></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">STATUS dbreadtext           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>void *&nbsp;</td>
          <td class="mdname" nowrap> <em>buf</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>bufsize</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Fetch part of a text or image value from the server. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buf</em>&nbsp;</td><td><em>output:</em> buffer into which text will be placed. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bufsize</em>&nbsp;</td><td>size of <em>buf</em>, in bytes. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><ul>
<li><code>&gt;0</code> count of bytes placed in <em>buf</em>.</li><li><code>0</code> end of row.</li><li><code>-1</code> <em>error</em>, no result set ready for <em>dbproc</em>.</li><li><code>NO_MORE_ROWS</code> all rows read, no further data. </li></ul>
</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga83">dbmoretext()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga84" doxytag="dblib.c::dbrecftos"></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">void dbrecftos           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>filename</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Record to a file all SQL commands sent to the server. 
<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>filename</em>&nbsp;</td><td>name of file to write to. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Files are named <em>filename.n</em>, where n is an integer, starting with 0, and incremented with each callto dbopen(). </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd>dbopen(), TDSDUMP environment variable(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga90" doxytag="dblib.c::dbregexec"></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">RETCODE dbregexec           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBUSMALLINT&nbsp;</td>
          <td class="mdname" nowrap> <em>options</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Execute a registered procedure. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>options</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga87">dbreginit()</a>, <a class="el" href="a00275.html#ga89">dbregparam()</a>, dbregwatch(), dbregnowatch </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000039">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga87" doxytag="dblib.c::dbreginit"></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">RETCODE dbreginit           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBCHAR *&nbsp;</td>
          <td class="mdname" nowrap> <em>procedure_name</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBSMALLINT&nbsp;</td>
          <td class="mdname" nowrap> <em>namelen</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Ready execution of a registered procedure. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>procedure_name</em>&nbsp;</td><td>to call. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>namelen</em>&nbsp;</td><td>size of <em>procedure_name</em>, in bytes. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga89">dbregparam()</a>, <a class="el" href="a00275.html#ga90">dbregexec()</a>, dbregwatch(), <a class="el" href="a00275.html#ga88">dbreglist()</a>, dbregwatchlist </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000036">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga88" doxytag="dblib.c::dbreglist"></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">RETCODE dbreglist           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get names of Open Server registered procedures. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga89">dbregparam()</a>, <a class="el" href="a00275.html#ga90">dbregexec()</a>, dbregwatch(), <a class="el" href="a00275.html#ga88">dbreglist()</a>, dbregwatchlist(). </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000037">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga89" doxytag="dblib.c::dbregparam"></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">RETCODE dbregparam           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>param_name</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>type</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>datalen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>data</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Describe parameter of registered procedure . 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>param_name</em>&nbsp;</td><td></td></tr>
    <tr><td valign="top"></td><td valign="top"><em>type</em>&nbsp;</td><td><code>SYB*</code> datatype. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>datalen</em>&nbsp;</td><td>size of <em>data</em>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>data</em>&nbsp;</td><td>address of buffer holding value for the parameter. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga87">dbreginit()</a>, <a class="el" href="a00275.html#ga90">dbregexec()</a>, dbnpdefine(), dbnpcreate(), dbregwatch(). </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000038">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga10" doxytag="dblib.c::dbresults"></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">RETCODE dbresults           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set up query results. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Some results are available. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>query was not processed successfully by the server </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>NO_MORE_RESULTS</em>&nbsp;</td><td>query produced no results.</td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Call <a class="el" href="a00275.html#ga10">dbresults()</a> after calling <a class="el" href="a00275.html#ga6">dbsqlexec()</a> or <a class="el" href="a00275.html#ga55">dbsqlok()</a>, or <a class="el" href="a00276.html#ga9">dbrpcsend()</a> returns SUCCEED. Unless one of them fails, dbresults will return either SUCCEED or NO_MORE_RESULTS.</dd></dl>
The meaning of <em>results</em> is very specific and not very intuitive. Results are created by either<ul>
<li>a SELECT statement</li><li>a stored procedure</li></ul>
<p>
When dbresults returns SUCCEED, therefore, it indicates the server processed the query successfully and that one or more of these is present:<ul>
<li>metadata -- <a class="el" href="a00275.html#ga11">dbnumcols()</a> returns 1 or more</li><li>data -- <a class="el" href="a00275.html#ga16">dbnextrow()</a> returns SUCCEED</li><li>return status -- <a class="el" href="a00276.html#ga0">dbhasretstat()</a> returns TRUE</li><li>output parameters -- <a class="el" href="a00276.html#ga2">dbnumrets()</a> returns 1 or more</li></ul>
<p>
If none of the above are present, <a class="el" href="a00275.html#ga10">dbresults()</a> returns NO_MORE_RESULTS.<p>
SUCCEED does not imply that <a class="el" href="a00275.html#ga111">DBROWS()</a> will return TRUE or even that <a class="el" href="a00275.html#ga11">dbnumcols()</a> will return nonzero. A general algorithm for reading results will call <a class="el" href="a00275.html#ga10">dbresults()</a> until it return NO_MORE_RESULTS (or FAIL). An application should check for all the above kinds of results within the <a class="el" href="a00275.html#ga10">dbresults()</a> loop.<p>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>, <a class="el" href="a00276.html#ga9">dbrpcsend()</a>, <a class="el" href="a00275.html#ga33">dbcancel()</a>, <a class="el" href="a00275.html#ga111">DBROWS()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>, <a class="el" href="a00276.html#ga0">dbhasretstat()</a>, <a class="el" href="a00276.html#ga1">dbretstatus()</a>, <a class="el" href="a00276.html#ga2">dbnumrets()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga62" doxytag="dblib.c::dbrpwclr"></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">void dbrpwclr           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">LOGINREC *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>login</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Clear remote passwords from the LOGINREC structure. 
<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>login</em>&nbsp;</td><td>structure to pass to dbopen(). </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga1">dblogin()</a>, dbopen(), <a class="el" href="a00275.html#ga63">dbrpwset()</a>, <a class="el" href="a00274.html#ga3">DBSETLAPP()</a>, <a class="el" href="a00274.html#ga0">DBSETLHOST()</a>, <a class="el" href="a00274.html#ga2">DBSETLPWD()</a>, <a class="el" href="a00274.html#ga1">DBSETLUSER()</a>. </dd></dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Useful for remote stored procedure calls, but not in high demand from FreeTDS. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000030">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga63" doxytag="dblib.c::dbrpwset"></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">RETCODE dbrpwset           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">LOGINREC *&nbsp;</td>
          <td class="mdname" nowrap> <em>login</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>srvname</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>password</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>pwlen</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Add a remote password to the LOGINREC structure. 
<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>login</em>&nbsp;</td><td>structure to pass to dbopen(). </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srvname</em>&nbsp;</td><td>server for which <em>password</em> should be used. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>password</em>&nbsp;</td><td>you guessed it, let's hope no else does. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pwlen</em>&nbsp;</td><td>count of <em>password</em>, in bytes. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Useful for remote stored procedure calls, but not in high demand from FreeTDS. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga1">dblogin()</a>, dbopen(), <a class="el" href="a00275.html#ga62">dbrpwclr()</a>, <a class="el" href="a00274.html#ga3">DBSETLAPP()</a>, <a class="el" href="a00274.html#ga0">DBSETLHOST()</a>, <a class="el" href="a00274.html#ga2">DBSETLPWD()</a>, <a class="el" href="a00274.html#ga1">DBSETLUSER()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000031">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga76" doxytag="dblib.c::dbsafestr"></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">RETCODE dbsafestr           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>src</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>srclen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>dest</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>destlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>quotetype</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
safely quotes character values in SQL text. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>src</em>&nbsp;</td><td>input string. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>srclen</em>&nbsp;</td><td>length of <em>src</em> in bytes, or -1 to indicate it's null-terminated. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td><em>output:</em> client-provided output buffer. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>destlen</em>&nbsp;</td><td>size of <em>dest</em> in bytes, or -1 to indicate it's "big enough" and the data should be null-terminated. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>quotetype</em>&nbsp;</td><td><ul>
<li><code>DBSINGLE</code> Doubles all single quotes (').</li><li><code>DBDOUBLE</code> Doubles all double quotes (").</li><li><code>DBBOTH</code> Doubles all single and double quotes. </li></ul>
</td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>no such <em>quotetype</em>, or insufficient room in <em>dest</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga93" doxytag="dblib.c::dbservcharset"></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">char* dbservcharset           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get <code>syscharset</code> name of the server character set. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>name of server's charset, as null-terminated ASCII string. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd>dbcharsetconv(), dbgetcharset(), <a class="el" href="a00275.html#ga114">DBSETLCHARSET()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga86" doxytag="dblib.c::dbsetdefcharset"></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">RETCODE dbsetdefcharset           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>charset</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the default character set. 
<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>charset</em>&nbsp;</td><td>null-terminated ASCII string, matching a row in master..syscharsets. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga40">dbsetdeflang()</a>, <a class="el" href="a00275.html#ga86">dbsetdefcharset()</a>, <a class="el" href="a00275.html#ga1">dblogin()</a>, dbopen(). </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000035">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga40" doxytag="dblib.c::dbsetdeflang"></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">RETCODE dbsetdeflang           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>language</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set the default character set for an application. 
<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>language</em>&nbsp;</td><td>ASCII null-terminated string. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga40">dbsetdeflang()</a>, <a class="el" href="a00275.html#ga86">dbsetdefcharset()</a>, <a class="el" href="a00275.html#ga1">dblogin()</a>, dbopen(). </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Always. </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000017">Todo:</a></b></dt><dd>Unimplemented. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga20" doxytag="dblib.c::dbsetifile"></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">void dbsetifile           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">char *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>filename</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
set name and location of the <code>interfaces</code> file FreeTDS should use to look up a servername. 
<p>
Does not affect lookups or location of <code>freetds.conf</code>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>filename</em>&nbsp;</td><td>name of <code>interfaces</code> </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd>dbopen() </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga54" doxytag="dblib.c::dbsetinterrupt"></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">void dbsetinterrupt           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DB_DBCHKINTR_FUNC&nbsp;</td>
          <td class="mdname" nowrap> <em>chkintr</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DB_DBHNDLINTR_FUNC&nbsp;</td>
          <td class="mdname" nowrap> <em>hndlintr</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set interrupt handler for db-lib to use while blocked against a read from the server. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>chkintr</em>&nbsp;</td><td></td></tr>
    <tr><td valign="top"></td><td valign="top"><em>hndlintr</em>&nbsp;</td><td></td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga33">dbcancel()</a>, <a class="el" href="a00275.html#ga66">dbgetuserdata()</a>, <a class="el" href="a00275.html#ga65">dbsetuserdata()</a>, dbsetbusy(), dbsetidle(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga46" doxytag="dblib.c::dbsetlogintime"></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">RETCODE dbsetlogintime           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>seconds</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set maximum seconds db-lib waits for a server response to a login attempt. 
<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>seconds</em>&nbsp;</td><td>New limit for application. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga59">dberrhandle()</a>, <a class="el" href="a00275.html#ga44">dbsettime()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga42" doxytag="dblib.c::dbsetmaxprocs"></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">RETCODE dbsetmaxprocs           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>maxprocs</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set maximum simultaneous connections db-lib will open to the server. 
<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>maxprocs</em>&nbsp;</td><td>Limit for process. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga43">dbgetmaxprocs()</a>, dbopen() </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga14" doxytag="dblib.c::dbsetnull"></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">RETCODE dbsetnull           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>bindtype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>bindlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>bindval</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Define substitution values to be used when binding null values. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bindtype</em>&nbsp;</td><td>type of binding to which the substitute value will apply. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bindlen</em>&nbsp;</td><td>size of the substitute value you are supplying, in bytes. Ignored except for CHARBIND and BINARYBIND. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bindval</em>&nbsp;</td><td>pointer to a buffer containing the substitute value. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>query was processed without errors. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>query was not processed </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga17">dbconvert()</a>, <a class="el" href="a00275.html#ga21">dbnullbind()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga53" doxytag="dblib.c::dbsetopt"></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">RETCODE dbsetopt           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>option</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>char_param</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>int_param</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set db-lib or server option. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>option</em>&nbsp;</td><td>option to set. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>char_param</em>&nbsp;</td><td>value to set <em>option</em> to, if it wants a null-teminated ASCII string. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>int_param</em>&nbsp;</td><td>value to set <em>option</em> to, if it wants an integer value. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>no such <em>option</em>, or insufficient memory, or unimplemented. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Many are unimplemented. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga70">dbclropt()</a>, <a class="el" href="a00275.html#ga71">dbisopt()</a>. </dd></dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000018">Todo:</a></b></dt><dd>Implement more options. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga15" doxytag="dblib.c::dbsetrow"></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">RETCODE dbsetrow           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>row</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Make a buffered row "current" without fetching it into bound variables. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>MORE_ROWS</em>&nbsp;</td><td>row found </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>NO_MORE_ROWS</em>&nbsp;</td><td>row not found </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td><em>dbproc</em> is dead or not enabled </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga68">dbcanquery()</a>, <a class="el" href="a00275.html#ga23">dbclrbuf()</a>, <a class="el" href="a00275.html#ga13">dbgetrow()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga44" doxytag="dblib.c::dbsettime"></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">RETCODE dbsettime           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>seconds</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Set maximum seconds db-lib waits for a server response to query. 
<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>seconds</em>&nbsp;</td><td>New limit for application. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga59">dberrhandle()</a>, DBGETTIME(), <a class="el" href="a00275.html#ga46">dbsetlogintime()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga65" doxytag="dblib.c::dbsetuserdata"></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">void dbsetuserdata           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>ptr</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Associate client-allocated (and defined) data with a <code>DBPROCESS</code>. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>ptr</em>&nbsp;</td><td>address of client-defined data. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd><em>ptr</em> is the location of user data that <code>db-lib</code> will associate with <em>dbproc</em>. The client allocates the buffer addressed by <em>ptr</em>. <code>db-lib</code> never examines or uses the information; it just stashes the pointer for later retrieval by the application with <code><a class="el" href="a00275.html#ga66">dbgetuserdata()</a></code>. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga66">dbgetuserdata()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga67" doxytag="dblib.c::dbsetversion"></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">RETCODE dbsetversion           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBINT&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>version</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Specify a db-lib version level. 
<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>version</em>&nbsp;</td><td>anything, really. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>Always. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>No effect on behavior of <code>db-lib</code> in <code>FreeTDS</code>. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga64" doxytag="dblib.c::dbspid"></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">int dbspid           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get server process ID for a <code>DBPROCESS</code>. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd><em>"spid"</em>, the server's process ID. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd>dbopen(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga35" doxytag="dblib.c::dbspr1row"></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">RETCODE dbspr1row           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</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>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>buf_len</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Print a regular result row to a buffer. 
<p>
Fills a buffer with one data row, represented as a null-terminated ASCII string. Helpful for debugging. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td><em>output:</em> Address of a buffer to hold ASCII null-terminated string. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buf_len</em>&nbsp;</td><td>size of <em>buffer</em>, in bytes. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>on success. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>trouble encountered. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga70">dbclropt()</a>, <a class="el" href="a00275.html#ga71">dbisopt()</a>, <a class="el" href="a00275.html#ga39">dbprhead()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>, <a class="el" href="a00275.html#ga34">dbspr1rowlen()</a>, <a class="el" href="a00275.html#ga38">dbsprhead()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga34" doxytag="dblib.c::dbspr1rowlen"></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">DBINT dbspr1rowlen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine size buffer required to hold the results returned by <a class="el" href="a00275.html#ga38">dbsprhead()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>, and <a class="el" href="a00275.html#ga35">dbspr1row()</a>. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>size of buffer requirement, in bytes. </dd></dl>
<dl compact><dt><b>Remarks:</b></dt><dd>An esoteric function. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga39">dbprhead()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>, <a class="el" href="a00275.html#ga35">dbspr1row()</a>, <a class="el" href="a00275.html#ga38">dbsprhead()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga38" doxytag="dblib.c::dbsprhead"></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">RETCODE dbsprhead           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</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>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>buf_len</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Print result set headings to a buffer. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>output buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buf_len</em>&nbsp;</td><td>size of <em>buffer</em> </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td><em>buffer</em> filled. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>insufficient spaace in <em>buffer</em>, usually. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga39">dbprhead()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>, <a class="el" href="a00275.html#ga53">dbsetopt()</a>, <a class="el" href="a00275.html#ga35">dbspr1row()</a>, <a class="el" href="a00275.html#ga34">dbspr1rowlen()</a>, <a class="el" href="a00275.html#ga37">dbsprline()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga37" doxytag="dblib.c::dbsprline"></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">RETCODE dbsprline           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</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>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>buf_len</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBCHAR&nbsp;</td>
          <td class="mdname" nowrap> <em>line_char</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get formatted string for underlining <a class="el" href="a00275.html#ga38">dbsprhead()</a> column names. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buffer</em>&nbsp;</td><td>output buffer </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>buf_len</em>&nbsp;</td><td>size of <em>buffer</em> </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>line_char</em>&nbsp;</td><td>character to use to represent underlining. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td><em>buffer</em> filled. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>insufficient space in <em>buffer</em>, usually. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga39">dbprhead()</a>, <a class="el" href="a00275.html#ga36">dbprrow()</a>, <a class="el" href="a00275.html#ga35">dbspr1row()</a>, <a class="el" href="a00275.html#ga34">dbspr1rowlen()</a>, <a class="el" href="a00275.html#ga38">dbsprhead()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga6" doxytag="dblib.c::dbsqlexec"></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">RETCODE dbsqlexec           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
send the SQL command to the server and wait for an answer. 
<p>
Please be patient. This function waits for the server to respond. <code>dbsqlexec</code> is equivalent to <a class="el" href="a00275.html#ga94">dbsqlsend()</a> followed by <a class="el" href="a00275.html#ga55">dbsqlok()</a>. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>query was processed without errors. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>was returned by <a class="el" href="a00275.html#ga94">dbsqlsend()</a> or <a class="el" href="a00275.html#ga55">dbsqlok()</a>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00276.html#ga1">dbretstatus()</a>, <a class="el" href="a00275.html#ga44">dbsettime()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a> </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga55" doxytag="dblib.c::dbsqlok"></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">RETCODE dbsqlok           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Wait for results of a query from the server. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked, fetch results with <code>dbnextresults()</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>SQL syntax error, typically. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga106">DBIORDESC()</a>, <a class="el" href="a00275.html#ga107">DBIOWDESC()</a>, <a class="el" href="a00275.html#ga83">dbmoretext()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga97">dbpoll()</a>, DBRBUF(), <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00276.html#ga1">dbretstatus()</a>, <a class="el" href="a00276.html#ga9">dbrpcsend()</a>, <a class="el" href="a00275.html#ga44">dbsettime()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga94">dbsqlsend()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga94" doxytag="dblib.c::dbsqlsend"></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">RETCODE dbsqlsend           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Transmit the command buffer to the server. <em>Non-blocking</em>, does not wait for a response. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>SQL sent. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>protocol problem, unless <a class="el" href="a00275.html#ga94">dbsqlsend()</a> when it's not supposed to be (in which case a db-lib error message will be emitted). </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga106">DBIORDESC()</a>, <a class="el" href="a00275.html#ga107">DBIOWDESC()</a>, <a class="el" href="a00275.html#ga16">dbnextrow()</a>, <a class="el" href="a00275.html#ga97">dbpoll()</a>, <a class="el" href="a00275.html#ga10">dbresults()</a>, <a class="el" href="a00275.html#ga44">dbsettime()</a>, <a class="el" href="a00275.html#ga6">dbsqlexec()</a>, <a class="el" href="a00275.html#ga55">dbsqlok()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga98" doxytag="dblib.c::dbstrbuild"></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">int dbstrbuild           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>charbuf</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>bufsize</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>text</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>formats</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>&nbsp;</td>
          <td class="mdname" nowrap> <em>...</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Build a printable string from text containing placeholders for variables. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>charbuf</em>&nbsp;</td><td><em>output:</em> buffer that will contain the ASCII null-terminated string built by <code><a class="el" href="a00275.html#ga98">dbstrbuild()</a></code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>bufsize</em>&nbsp;</td><td>size of <em>charbuf</em>, in bytes. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>null-terminated ASCII string, with <em>placeholders</em> for variables. <em>A</em> Placeholder is a three-byte string, made up of:<ul>
<li>'%' a percent sign</li><li>0-9 an integer (designates the argument number to use, starting with 1.)</li><li>'!' an exclamation point </li></ul>
</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>formats</em>&nbsp;</td><td>null-terminated ASCII sprintf-style string. Has one format specifier for each placeholder in <em>text</em>. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd>Following <em>formats</em> are the arguments, the values to substitute for the placeholders. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga17">dbconvert()</a>, dbdatename(), dbdatepart(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga75" doxytag="dblib.c::dbstrcpy"></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">RETCODE dbstrcpy           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>start</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>numbytes</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>dest</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get a copy of a chunk of the command buffer. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>start</em>&nbsp;</td><td>position in the command buffer to start copying from, starting from <em>0</em>. If start is past the end of the command buffer, <a class="el" href="a00275.html#ga75">dbstrcpy()</a> inserts a null terminator at dest[0]. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>numbytes</em>&nbsp;</td><td>number of bytes to copy.<ul>
<li>If -1, <a class="el" href="a00275.html#ga75">dbstrcpy()</a> copies the whole command buffer.</li><li>If 0 <a class="el" href="a00275.html#ga75">dbstrcpy()</a> writes a <code>NULL</code> to dest[0].</li><li>If the command buffer contains fewer than <em>numbytes</em> (taking <em>start</em> into account) <a class="el" href="a00275.html#ga75">dbstrcpy()</a> copies the rest of it. </li></ul>
</td></tr>
    <tr><td valign="top"></td><td valign="top"><em>dest</em>&nbsp;</td><td><em>output:</em> the buffer to write to. Make sure it's big enough. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>the inputs were valid and <em>dest</em> was affected. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td><em>start</em> &lt; 0 or <em>numbytes</em> &lt; -1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga69">dbfreebuf()</a>, <a class="el" href="a00275.html#ga74">dbgetchar()</a>, <a class="el" href="a00275.html#ga73">dbstrlen()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga73" doxytag="dblib.c::dbstrlen"></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">int dbstrlen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname1" valign="top" nowrap> <em>dbproc</em>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get size of the command buffer, in bytes. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga5">dbcmd()</a>, <a class="el" href="a00275.html#ga4">dbfcmd()</a>, <a class="el" href="a00275.html#ga69">dbfreebuf()</a>, <a class="el" href="a00275.html#ga74">dbgetchar()</a>, <a class="el" href="a00275.html#ga75">dbstrcpy()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga78" doxytag="dblib.c::dbtablecolinfo"></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">RETCODE dbtablecolinfo           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBCOL *&nbsp;</td>
          <td class="mdname" nowrap> <em>pdbcol</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
describe table column attributes with a single call (Freetds-only API function modelled on dbcolinfo) 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>pdbcol</em>&nbsp;</td><td>address of structure to be populated by this function. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>SUCCEED or FAIL. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00195.html#a82">dbcolinfo()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga80" doxytag="dblib.c::dbtxptr"></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">DBBINARY* dbtxptr           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get text pointer for a column in the current row. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>number of the column in the <code>SELECT</code> statement, starting at 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>text pointer for <em>column</em>, may be NULL. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga79">dbtxtimestamp()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga79" doxytag="dblib.c::dbtxtimestamp"></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">DBBINARY* dbtxtimestamp           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Get text timestamp for a column in the current row. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>number of the column in the <code>SELECT</code> statement, starting at 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Returns:</b></dt><dd>timestamp for <em>column</em>, may be NULL. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga80">dbtxptr()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga7" doxytag="dblib.c::dbuse"></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">RETCODE dbuse           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>const char *&nbsp;</td>
          <td class="mdname" nowrap> <em>name</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Change current database. 
<p>
Analagous to the unix command <code>cd</code>, <a class="el" href="a00275.html#ga7">dbuse()</a> makes <em>name</em> the default database. Waits for an answer from the server. <dl compact><dt><b>Parameters:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>name</em>&nbsp;</td><td>database to use. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>query was processed without errors. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>query was not processed </td></tr>
  </table>
</dl>
<dl compact><dt><b><a class="el" href="todo.html#_todo000010">Todo:</a></b></dt><dd><em>name</em> should be quoted.</dd></dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga91">dbchange()</a>, <a class="el" href="a00275.html#ga92">dbname()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga30" doxytag="dblib.c::dbvarylen"></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">DBINT dbvarylen           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>column</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Determine whether a column can vary in size. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>column</em>&nbsp;</td><td>Nth in the result set, starting from 1. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>TRUE</em>&nbsp;</td><td>datatype of column can vary in size, or is nullable. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FALSE</em>&nbsp;</td><td>datatype of column is fixed and is not nullable. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga29">dbcollen()</a>, <a class="el" href="a00275.html#ga12">dbcolname()</a>, <a class="el" href="a00275.html#ga25">dbcoltype()</a>, <a class="el" href="a00275.html#ga32">dbdata()</a>, <a class="el" href="a00275.html#ga31">dbdatlen()</a>, <a class="el" href="a00275.html#ga11">dbnumcols()</a>, <a class="el" href="a00275.html#ga77">dbprtype()</a>. </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga85" doxytag="dblib.c::dbversion"></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">const char* dbversion           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">void&nbsp;</td>
          <td class="mdname1" valign="top" nowrap>          </td>
          <td class="md" valign="top">&nbsp;)&nbsp;</td>
          <td class="md" nowrap></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
See which version of db-lib is in use. 
<p>
<dl compact><dt><b>Returns:</b></dt><dd>null-terminated ASCII string representing the version of db-lib. </dd></dl>
<dl compact><dt><b>Remarks:</b></dt><dd>FreeTDS returns the CVS version string of <a class="el" href="a00195.html">dblib.c</a>. </dd></dl>
<dl compact><dt><b>See also:</b></dt><dd></dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga24" doxytag="dblib.c::dbwillconvert"></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">DBBOOL dbwillconvert           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">int&nbsp;</td>
          <td class="mdname" nowrap> <em>srctype</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>int&nbsp;</td>
          <td class="mdname" nowrap> <em>desttype</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Test whether or not a datatype can be converted to another datatype. 
<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>srctype</em>&nbsp;</td><td>type converting from </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>desttype</em>&nbsp;</td><td>type converting to </td></tr>
  </table>
</dl>
<dl compact><dt><b>Remarks:</b></dt><dd><a class="el" href="a00275.html#ga24">dbwillconvert()</a> lies sometimes. Some datatypes <em>should</em> be convertible but aren't yet in our implementation. * </dd></dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>TRUE</em>&nbsp;</td><td>convertible, or should be. Legal unimplemented conversions return <em>TRUE</em>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>not convertible. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga50">dbaltbind()</a>, <a class="el" href="a00275.html#ga19">dbbind()</a>, <a class="el" href="a00275.html#ga17">dbconvert()</a>, <a class="el" href="a00275.html#ga18">dbconvert_ps()</a>, <code>src/dblib/unittests/convert</code>().c(). </dd></dl>
    </td>
  </tr>
</table>
<a class="anchor" name="ga81" doxytag="dblib.c::dbwritetext"></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">RETCODE dbwritetext           </td>
          <td class="md" valign="top">(&nbsp;</td>
          <td class="md" nowrap valign="top">DBPROCESS *&nbsp;</td>
          <td class="mdname" nowrap> <em>dbproc</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>char *&nbsp;</td>
          <td class="mdname" nowrap> <em>objname</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBBINARY *&nbsp;</td>
          <td class="mdname" nowrap> <em>textptr</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBTINYINT&nbsp;</td>
          <td class="mdname" nowrap> <em>textptrlen</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBBINARY *&nbsp;</td>
          <td class="mdname" nowrap> <em>timestamp</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBBOOL&nbsp;</td>
          <td class="mdname" nowrap> <em>log</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>DBINT&nbsp;</td>
          <td class="mdname" nowrap> <em>size</em>, </td>
        </tr>
        <tr>
          <td class="md" nowrap align="right"></td>
          <td class="md"></td>
          <td class="md" nowrap>BYTE *&nbsp;</td>
          <td class="mdname" nowrap> <em>text</em></td>
        </tr>
        <tr>
          <td class="md"></td>
          <td class="md">)&nbsp;</td>
          <td class="md" colspan="2"></td>
        </tr>
      </table>
    </td>
  </tr>
</table>
<table cellspacing="5" cellpadding="0" border="0">
  <tr>
    <td>
      &nbsp;
    </td>
    <td>

<p>
Send text or image data to the server. 
<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>dbproc</em>&nbsp;</td><td>contains all information needed by db-lib to manage communications with the server. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>objname</em>&nbsp;</td><td>table name </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>textptr</em>&nbsp;</td><td>text pointer to be modified, obtained from <a class="el" href="a00275.html#ga80">dbtxptr()</a>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>textptrlen</em>&nbsp;</td><td><em>Ignored</em>. Supposed to be <code>DBTXPLEN</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>timestamp</em>&nbsp;</td><td>text timestamp to be modified, obtained from <a class="el" href="a00275.html#ga79">dbtxtimestamp()</a> or dbtxtsnewval(), may be <code>NULL</code>. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>log</em>&nbsp;</td><td><code>TRUE</code> if the operation is to be recorded in the transaction log. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>size</em>&nbsp;</td><td>overall size of the data (in total, not just for this call), in bytes. A guideline, must not overstate the case. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>text</em>&nbsp;</td><td>the chunk of data to write. </td></tr>
  </table>
</dl>
<dl compact><dt><b>Return values:</b></dt><dd>
  <table border="0" cellspacing="2" cellpadding="0">
    <tr><td valign="top"></td><td valign="top"><em>SUCCEED</em>&nbsp;</td><td>everything worked. </td></tr>
    <tr><td valign="top"></td><td valign="top"><em>FAIL</em>&nbsp;</td><td>not sent, possibly because <em>timestamp</em> is invalid or was changed in the database since it was fetched. </td></tr>
  </table>
</dl>
<dl compact><dt><b>See also:</b></dt><dd><a class="el" href="a00275.html#ga83">dbmoretext()</a>, <a class="el" href="a00275.html#ga80">dbtxptr()</a>, <a class="el" href="a00275.html#ga79">dbtxtimestamp()</a>, <a class="el" href="a00275.html#ga81">dbwritetext()</a>, dbtxtsput(). </dd></dl>
    </td>
  </tr>
</table>
<hr size="1"><address style="align: right;"><small>Generated on Wed May 7 19:22:10 2008 for FreeTDS API by&nbsp;
<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>