php-doc-en/functions/uodbc.sgml
James Gingerich 82c6591284 Many minor cleanups.
git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@9864 c90b9560-bf6c-de11-be94-00142212c4b1
1999-06-20 03:04:56 +00:00

843 lines
28 KiB
Text

<reference id="ref.odbc">
<title>ODBC functions</title>
<titleabbrev>ODBC</titleabbrev>
<refentry id="function.odbc-autocommit">
<refnamediv>
<refname>odbc_autocommit</refname>
<refpurpose>Toggle autocommit behaviour</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_autocommit</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
<paramdef>int <parameter><optional>OnOff</optional></parameter></paramdef>
</funcsynopsis>
<para>
Without the <parameter>OnOff</parameter> parameter, this function
returns auto-commit status for
<parameter>connection_id</parameter>. True is returned if
auto-commit is on, false if it is off or an error occurs.
<para>
If <parameter>OnOff</parameter> is true, auto-commit is enabled,
if it is false auto-commit is disabled. Returns
<literal>true</literal> on success, <literal>false</literal> on
failure.
<para>
By default, auto-commit is on for a connection. Disabling
auto-commit is equivalent with starting a transaction.
<simpara>
See also
<function>odbc_commit</function> and
<function>odbc_rollback</function>.
</refsect1>
</refentry>
<refentry id="function.odbc-binmode">
<refnamediv>
<refname>odbc_binmode</refname>
<refpurpose>handling of binary column data</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_binmode</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter>mode</parameter></paramdef>
</funcsynopsis>
<para>(ODBC SQL types affected: BINARY, VARBINARY, LONGVARBINARY)
</para>
<itemizedlist>
<listitem><simpara>
ODBC_BINMODE_PASSTHRU: Passthru BINARY data
</simpara></listitem>
<listitem><simpara>
ODBC_BINMODE_RETURN: Return as is
</simpara></listitem>
<listitem><simpara>
ODBC_BINMODE_CONVERT: Convert to char and return
</simpara></listitem>
</itemizedlist>
<para>
When binary SQL data is converted to character C data, each byte
(8 bits) of source data is represented as two ASCII characters.
These characters are the ASCII character representation of the
number in its hexadecimal form. For example, a binary 00000001 is
converted to <literal>"01"</literal> and a binary 11111111 is
converted to <literal>"FF"</literal>.
<table>
<title>LONGVARBINARY handling</title>
<tgroup cols="3">
<thead>
<row>
<entry>binmode</entry>
<entry>longreadlen</entry>
<entry>result</entry>
</row>
</thead>
<tbody>
<row>
<entry>ODBC_BINMODE_PASSTHRU</entry>
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry>ODBC_BINMODE_RETURN</entry>
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry>ODBC_BINMODE_CONVERT</entry>
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry>ODBC_BINMODE_PASSTHRU</entry>
<entry>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry>ODBC_BINMODE_PASSTHRU</entry>
<entry>>0</entry>
<entry>passthru</entry>
</row>
<row>
<entry>ODBC_BINMODE_RETURN</entry>
<entry>>0</entry>
<entry>return as is</entry>
</row>
<row>
<entry>ODBC_BINMODE_CONVERT</entry>
<entry>>0</entry>
<entry>return as char</entry>
</row>
</tbody>
</tgroup>
</table>
<para>
If <function>odbc_fetch_into</function> is used, passthru means
that an empty string is returned for these columns.
<para>
If <parameter>result_id</parameter> is <literal>0</literal>, the
settings apply as default for new results.
<note><simpara> Default for longreadlen is
<literal>4096</literal> and binmode defaults to
<literal>ODBC_BINMODE_RETURN</literal>. Handling of binary
long columns is also affected by
<function>odbc_longreadlen</function>
</simpara>
</note>
</refsect1>
</refentry>
<refentry id="function.odbc-close">
<refnamediv>
<refname>odbc_close</refname>
<refpurpose>Close an ODBC connection</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>void <function>odbc_close</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_close</function> will close down the connection to
the database server associated with the given connection
identifier.
<note><simpara>
This function will fail if there are open
transactions on this connection. The connection will remain open
in this case.
</simpara></note>
</refsect1>
</refentry>
<refentry id="function.odbc-close-all">
<refnamediv>
<refname>odbc_close_all</refname>
<refpurpose>Close all ODBC connections</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>void <function>odbc_close_all</function></funcdef>
<void>
</funcsynopsis>
<para>
<function>odbc_close_all</function> will close down all
connections to database server(s).
<note><simpara>
This function will fail if there are open
transactions on a connection. This connection will remain open
in this case.
</simpara></note>
</refsect1>
</refentry>
<refentry id="function.odbc-commit">
<refnamediv>
<refname>odbc_commit</refname>
<refpurpose>Commit an ODBC transaction</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_commit</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
</funcsynopsis>
<para>Returns: <literal>true</literal> on success, <literal>false</literal> on failure.
All pending transactions on <parameter>connection_id</parameter>
are committed.
</refsect1>
</refentry>
<refentry id="function.odbc-connect">
<refnamediv>
<refname>odbc_connect</refname>
<refpurpose>Connect to a datasource</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_connect</function></funcdef>
<paramdef>string <parameter>dsn</parameter></paramdef>
<paramdef>string <parameter>user</parameter></paramdef>
<paramdef>string <parameter>password</parameter></paramdef>
<paramdef>int <parameter><optional>cursor_type</optional></parameter></paramdef>
</funcsynopsis>
<para>
Returns an ODBC connection id or 0 (<literal>false</literal>) on error.
<simpara>
The connection id returned by this functions is needed by other
ODBC functions. You can have multiple connections open at once.
The optional fourth parameter sets the type of cursor to be used
for this connection. This parameter is not normally needed, but
can be useful for working around problems with some ODBC drivers.
<simpara>
With some ODBC drivers, executing a complex stored procedure may
fail with an error similar to: "Cannot open a cursor on a stored
procedure that has anything other than a single select statement
in it". Using SQL_CUR_USE_ODBC may avoid that error. Also, some
drivers don't support the optional row_number parameter in
<function>odbc_fetch_row</function>. SQL_CUR_USE_ODBC might help
in that case, too.
<simpara>
The following constants are defined for cursortype:
<para>
<itemizedlist>
<listitem><simpara>
SQL_CUR_USE_IF_NEEDED
</simpara></listitem>
<listitem><simpara>
SQL_CUR_USE_ODBC
</simpara></listitem>
<listitem><simpara>
SQL_CUR_USE_DRIVER
</simpara></listitem>
<listitem><simpara>
SQL_CUR_DEFAULT
</simpara></listitem>
</itemizedlist>
<simpara>
For persistent connections see <function>odbc_pconnect</function>.
</refsect1>
</refentry>
<refentry id="function.odbc-cursor">
<refnamediv>
<refname>odbc_cursor</refname>
<refpurpose>Get cursorname</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>string <function>odbc_cursor</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
</funcsynopsis>
<para>
odbc_cursor will return a cursorname for the given result_id.
</refsect1>
</refentry>
<refentry id="function.odbc-do">
<refnamediv>
<refname>odbc_do</refname>
<refpurpose>synonym for <function>odbc_exec</function></refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>string <function>odbc_do</function></funcdef>
<paramdef>int <parameter>conn_id</parameter></paramdef>
<paramdef>string <parameter>query</parameter></paramdef>
</funcsynopsis>
<para>
odbc_do will execute a query on the given connection
</refsect1>
</refentry>
<refentry id="function.odbc-exec">
<refnamediv>
<refname>odbc_exec</refname>
<refpurpose>Prepare and execute a SQL statement</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_exec</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
<paramdef>string <parameter>query_string</parameter></paramdef>
</funcsynopsis>
<para>
Returns <literal>false</literal> on error. Returns an ODBC
result identifier if the SQL command was executed successfully.
<para>
<function>odbc_exec</function> will send an SQL statement to the
database server specified by
<parameter>connection_id</parameter>. This parameter must be a
valid identifier returned by <function>odbc_connect</function> or
<function>odbc_pconnect</function>.
<simpara>
See also: <function>odbc_prepare</function> and
<function>odbc_execute</function> for multiple execution of SQL
statements.
</refsect1>
</refentry>
<refentry id="function.odbc-execute">
<refnamediv>
<refname>odbc_execute</refname>
<refpurpose>execute a prepared statement</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_execute</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>array
<parameter><optional>parameters_array</optional></parameter></paramdef>
</funcsynopsis>
<para>
Executes a statement prepared with
<function>odbc_prepare</function>. Returns
<literal>true</literal> on successful execution,
<literal>false</literal> otherwise. The array
<parameter>arameters_array</parameter> only needs to
be given if you really have parameters in your statement.
</refsect1>
</refentry>
<refentry id="function.odbc-fetch-into">
<refnamediv>
<refname>odbc_fetch_into</refname>
<refpurpose>Fetch one result row into array</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_fetch_into</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter><optional>rownumber</optional></parameter></paramdef>
<paramdef>array <parameter>result_array</parameter></paramdef>
</funcsynopsis>
<para>
Returns the number of columns in the result;
<literal>false</literal> on error.
<parameter>result_array</parameter> must be passed by reference,
but it can be of any type since it will be converted to type
array. The array will contain the column values starting at array
index 0.
</refsect1>
</refentry>
<refentry id="function.odbc-fetch-row">
<refnamediv>
<refname>odbc_fetch_row</refname>
<refpurpose>Fetch a row</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_fetch_row</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter><optional>row_number</optional></parameter></paramdef>
</funcsynopsis>
<para>
If <function>odbc_fetch_row</function> was succesful (there was a
row), <literal>true</literal> is returned. If there are no more
rows, <literal>false</literal> is returned.
<para>
<function>odbc_fetch_row</function> fetches a row of the data
that was returned by <function>odbc_do</function> /
<function>odbc_exec</function>. After
<function>odbc_fetch_row</function> is called, the fields of that
row can be accessed with <function>odbc_result</function>.
<para>
If <parameter>row_number</parameter> is not specified,
<function>odbc_fetch_row</function> will try to fetch the next
row in the result set. Calls to
<function>odbc_fetch_row</function> with and without
<parameter>row_number</parameter> can be mixed.
<para>
To step through the result more than once, you can call
<function>odbc_fetch_row</function> with
<parameter>row_number</parameter> 1, and then continue doing
<function>odbc_fetch_row</function> without
<parameter>row_number</parameter> to review the result. If a
driver doesn't support fetching rows by number, the
<parameter>row_number</parameter> parameter is ignored.
</refsect1>
</refentry>
<refentry id="function.odbc-field-name">
<refnamediv>
<refname>odbc_field_name</refname>
<refpurpose>Get the columnname</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>string <function>odbc_fieldname</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter>field_number</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_field_name</function> will return the name of the
field occupying the given column number in the given ODBC result
identifier. Field numbering starts at 1.
<literal>false</literal> is returned on error.
</refsect1>
</refentry>
<!--
<refentry id="function.odbc-field-num">
<refnamediv>
<refname>odbc_field_num</refname>
<refpurpose>return column number</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_field_num</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>string <parameter>field_name</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_field_num</function> will return the number of the
column slot that corresponds to the named field in the given ODBC
result identifier. Field numbering starts at 1.
<literal>false</literal> is returned on error.
</refsect1>
</refentry>
-->
<refentry id="function.odbc-field-type">
<refnamediv>
<refname>odbc_field_type</refname>
<refpurpose>datatype of a field</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>string <function>odbc_field_type</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter>field_number</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_field_type</function> will return the SQL type of
the field referecend by number in the given ODBC result
identifier. Field numbering starts at 1.
</refsect1>
</refentry>
<refentry id="function.odbc-field-len">
<refnamediv>
<refname>odbc_field_len</refname>
<refpurpose>get the Length of a field</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_field_len</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter>field_number</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_field_len</function> will return the length of
the field referecend by number in the given ODBC result
identifier. Field numbering starts at 1.
</refsect1>
</refentry>
<refentry id="function.odbc-free-result">
<refnamediv>
<refname>odbc_free_result</refname>
<refpurpose>free resources associated with a result</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_free_result</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
</funcsynopsis>
<para>
Always returns <literal>true</literal>.
<para>
<function>odbc_free_result</function> only needs to be called if
you are worried about using too much memory while your script is
running. All result memory will automatically be freed when the
script is finished. But, if you are sure you are not going to
need the result data anymore in a script, you may call
<function>odbc_free_result</function>, and the memory associated
with <parameter>result_id</parameter> will be freed.
<para>
<note><simpara>
If auto-commit is disabled (see
<function>odbc_autocommit</function>) and you call
<function>odbc_free_result</function> before commiting, all
pending transactions are rolled back.
</simpara></note>
</refsect1>
</refentry>
<refentry id="function.odbc-longreadlen">
<refnamediv>
<refname>odbc_longreadlen</refname>
<refpurpose>handling of LONG columns</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_longreadlen</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>int <parameter>length</parameter></paramdef>
</funcsynopsis>
<para>(ODBC SQL types affected: LONG, LONGVARBINARY)
The number of bytes returned to PHP is controled by the
parameter length. If it is set to 0, Long column data is passed
thru to the client.</para>
<note><simpara>
Handling of LONGVARBINARY columns is also affected by
<function>odbc_binmode</function>
</simpara>
</note>
</refsect1>
</refentry>
<refentry id="function.odbc-num-fields">
<refnamediv>
<refname>odbc_num_fields</refname>
<refpurpose>number of columns in a result</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_num_fields</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_num_fields</function> will return the number of
fields (columns) in an ODBC result. This function will return -1
on error. The argument is a valid result identifier returned by
<function>odbc_exec</function>.
</refsect1>
</refentry>
<refentry id="function.odbc-pconnect">
<refnamediv>
<refname>odbc_pconnect</refname>
<refpurpose>Open a persistent database connection</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_pconnect</function></funcdef>
<paramdef>string <parameter>dsn</parameter></paramdef>
<paramdef>string <parameter>user</parameter></paramdef>
<paramdef>string <parameter>password</parameter></paramdef>
<paramdef>int <parameter><optional>cursor_type</optional></parameter></paramdef>
</funcsynopsis>
<para>
Returns an ODBC connection id or 0 (<literal>false</literal>) on error. This
function is much like <function>odbc_connect</function>, except
that the connection is not really closed when the script has
finished. Future requests for a connection with the same
<parameter>dsn</parameter>, <parameter>user</parameter>,
<parameter>password</parameter> combination (via
<function>odbc_connect</function> and
<function>odbc_pconnect</function>) can reuse the persistent
connection.
<para>
<note><simpara>
Persistent connections have no effect if PHP is used as a CGI
program.
</simpara></note>
<para>
For information about the optional cursor_type parameter see the
<function>odbc_connect</function> function. For more information
on persistent connections, refer to the PHP FAQ.
</refsect1>
</refentry>
<refentry id="function.odbc-prepare">
<refnamediv>
<refname>odbc_prepare</refname>
<refpurpose>Prepares a statement for execution</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_prepare</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
<paramdef>string <parameter>query_string</parameter></paramdef>
</funcsynopsis>
<para>
Returns <literal>false</literal> on error.
<para>
Returns an ODBC result identifier if the SQL command was prepared
successfully. The result identifier can be used later to execute
the statement with <function>odbc_execute</function>.
</refsect1>
</refentry>
<refentry id="function.odbc-num-rows">
<refnamediv>
<refname>odbc_num_rows</refname>
<refpurpose>Number of rows in a result</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_num_rows</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
</funcsynopsis>
<para>
<function>odbc_num_rows</function> will return the number of rows
in an ODBC result. This function will return -1 on error. For
INSERT, UPDATE and DELETE statements
<function>odbc_num_rows</function> returns the number of rows
affected. For a SELECT clause this <literal>can</literal> be
the number of rows available.
<para>
Note: Using <function>odbc_num_rows</function> to determine the
number of rows available after a SELECT will return -1 with many
drivers.
</refsect1>
</refentry>
<refentry id="function.odbc-result">
<refnamediv>
<refname>odbc_result</refname>
<refpurpose>get result data</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>string <function>odbc_result</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>mixed <parameter>field</parameter></paramdef>
</funcsynopsis>
<para>
Returns the contents of the field.
<para>
<parameter>field</parameter> can either be an integer containing
the column number of the field you want; or it can be a string
containing the name of the field. For example:
<informalexample><programlisting>
$item_3 = odbc_result($Query_ID, 3 );
$item_val = odbc_result($Query_ID, "val");
</programlisting></informalexample>
<para>
The first call to <function>odbc_result</function> returns the
value of the third field in the current record of the query
result. The second function call to
<function>odbc_result</function> returns the value of the field
whose field name is "val" in the current record of the query
result. An error occurs if a column number parameter for a field
is less than one or exceeds the number of columns (or fields) in
the current record. Similarly, an error occurs if a field with a
name that is not one of the fieldnames of the table(s) that
is(are) being queried.
<para>
Field indices start from 1. Regarding the way binary or
long column data is returned refer to <function>odbc_binmode
</function> and <function>odbc_longreadlen</function>.
<!--
If the requested field contains
binary data or is of datatype LONG,
longer than 4096 bytes, the contents is not
returned, instead it is sent directly to the client. Hint: If you
need to have binary data returned, use the SQL function HEX() to
retrieve the field in hexadecimal notation. E.g. "SELECT
HEX(binary_col) FROM mytable"
-->
</refsect1>
</refentry>
<refentry id="function.odbc-result-all">
<refnamediv>
<refname>odbc_result_all</refname>
<refpurpose>Print result as HTML table</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_result_all</function></funcdef>
<paramdef>int <parameter>result_id</parameter></paramdef>
<paramdef>string <parameter><optional>format</optional></parameter></paramdef>
</funcsynopsis>
<para>
Returns the number of rows in the result or <literal>false</literal> on error.
<para>
<function>odbc_result_all</function> will print all rows from a
result identifier produced by <function>odbc_exec</function>. The
result is printed in HTML table format. With the optional string
argument <parameter>format</parameter>, additional overall table
formatting can be done.
</refsect1>
</refentry>
<refentry id="function.odbc-rollback">
<refnamediv>
<refname>odbc_rollback</refname>
<refpurpose>Rollback a transaction</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_rollback</function></funcdef>
<paramdef>int <parameter>connection_id</parameter></paramdef>
</funcsynopsis>
<para>
Rolls back all pending statements on
<parameter>connection_id</parameter>. Returns
<literal>true</literal> on success, <literal>false</literal> on
failure.
</refsect1>
</refentry>
<refentry id="function.odbc-setoption">
<refnamediv>
<refname>odbc_setoption</refname>
<refpurpose>
Adjust ODBC settings. Returns false if an error occurs, otherwise
true.
</refpurpose>
</refnamediv>
<refsect1>
<title>Description</title>
<funcsynopsis>
<funcdef>int <function>odbc_setoption</function></funcdef>
<paramdef>int <parameter>id</parameter></paramdef>
<paramdef>int <parameter>function</parameter></paramdef>
<paramdef>int <parameter>option</parameter></paramdef>
<paramdef>int <parameter>param</parameter></paramdef>
</funcsynopsis>
<para>
This function allows fiddling with the ODBC options for a
particular connection or query result. It was written to help
find work arounds to problems in quirky ODBC drivers. You
should probably only use this function if you are an ODBC
programmer and understand the effects the various options will
have. You will certainly need a good ODBC reference to explain
all the different options and values that can be used.
Different driver versions support different options.
<para>
Because the effects may vary depending on the ODBC driver, use
of this function in scripts to be made publicly available is
strongly discouraged. Also, some ODBC options are not available
to this function because they must be set before the connection
is established or the query is prepared. However, if on a
particular job it can make PHP work so your boss doesn't tell
you to use a commercial product, that's all that really matters.
<para>
<parameter>Id</parameter> is a connection id or result id on
which to change the settings.For SQLSetConnectOption(), this is
a connection id. For SQLSetStmtOption(), this is a result id.
<para>
<parameter>function</parameter> is the ODBC function to use. The
value should be 1 for SQLSetConnectOption() and 2 for
SQLSetStmtOption().
<para>
Parmeter <parameter>option</parameter> is the option to set.
<para>
Parameter <parameter>param</parameter> is the value for the
given <parameter>option</parameter>.
<example>
<title>ODBC Setoption Examples</title>
<programlisting role="php">
// 1. Option 102 of SQLSetConnectOption() is SQL_AUTOCOMMIT.
// Value 1 of SQL_AUTOCOMMIT is SQL_AUTOCOMMIT_ON.
// This example has the same effect as
// odbc_autocommit($conn, true);
odbc_setoption ($conn, 1, 102, 1);
// 2. Option 0 of SQLSetStmtOption() is SQL_QUERY_TIMEOUT.
// This example sets the query to timeout after 30 seconds.
$result = odbc_prepare ($conn, $sql);
odbc_setoption ($result, 2, 0, 30);
odbc_execute ($result);
</programlisting>
</example>
</refsect1>
</refentry>
</reference>
<!-- Keep this comment at the end of the file
Local variables:
mode: sgml
sgml-omittag:t
sgml-shorttag:t
sgml-minimize-attributes:nil
sgml-always-quote-attributes:t
sgml-indent-step:1
sgml-indent-data:t
sgml-parent-document:nil
sgml-default-dtd-file:"../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
-->