mirror of
https://github.com/sigmasternchen/php-doc-en
synced 2025-03-15 16:38:54 +00:00

git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@9864 c90b9560-bf6c-de11-be94-00142212c4b1
843 lines
28 KiB
Text
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:
|
|
-->
|
|
|
|
|
|
|