This function is internally used by the <EM>bind_param</EM> method, the
<EM>bind_param_inout</EM> method and by the DBI Driver.xst code if <CODE>execute</CODE>
is called with any bind parameters.
<PRE>
int dbd_bind_ph (SV *sth, imp_sth_t *imp_sth, SV *param,
SV *value, IV sql_type, SV *attribs,
int is_inout, IV maxlen);</PRE>
<P>The <EM>param</EM> argument holds an IV with the parameter number (1, 2, ...).
The <EM>value</EM> argument is the parameter value and <EM>sql_type</EM> is its type.</P>
<P>If your driver does not support bind_param_inout then you should
ignore <EM>maxlen</EM> and croak if <EM>is_inout</EM> is TRUE.</P>
<P>If your driver <EM>does</EM> support bind_param_inout then you should
note that <EM>value</EM> is the SV <EM>after</EM> dereferencing the reference
passed to bind_param_inout.</P>
<P>In drivers of simple databases the function will, for example, store
the value in a parameter array and use it later in <EM>dbd_st_execute</EM>.
See the <EM>DBD::mysql</EM> driver for an example.</P>
<P></P></DL>
<P>
<H2><A NAME="makefile.pl">Makefile.PL</A></H2>
<P>This is exactly as in the Pure Perl case. To be honest, the above
Makefile.PL contains some things that are superfluous for Pure Perl
drivers. :-)</P>
<P>
<HR>
<H1><A NAME="methods which do not need to be written">METHODS WHICH DO NOT NEED TO BE WRITTEN</A></H1>
<P>The DBI code implements the majority of the methods which are
accessed using the notation DBI->function(), the only exceptions being
DBI-><A HREF="../../../lib/Pod/perlfunc.html#item_connect"><CODE>connect()</CODE></A> and DBI-><CODE>data_sources()</CODE> which require support from the
driver.</P>
<P>The DBI code implements the following documented driver, database and
statement functions which do not need to be written by the DBD driver
<P>The $sth-><A HREF="#item_bind_col"><CODE>bind_col()</CODE></A> and $sth-><A HREF="#item_bind_columns"><CODE>bind_columns()</CODE></A> documented in the DBI
specification do not have to be implemented by the driver writer
becuase DBI takes care of the details for you.
However, the key to ensuring that bound columns work is to call the
function DBIS-><CODE>get_fbav()</CODE> in the code which fetches a row of data.
This returns an AV, and each element of the AV contains the SV which
should be set to contain the returned data.</P>
<P>The above is for C drivers only. The Perl equivalent is the
$sth-><CODE>_set_fbav($data)</CODE> method, as described in the part on Pure