php-doc-en/reference/pdo/reference.xml

428 lines
12 KiB
XML
Raw Normal View History

<?xml version='1.0' encoding='iso-8859-1'?>
<!-- $Revision: 1.20 $ -->
<!-- Generated by xml_proto.php v2.1. Found in /scripts directory of phpdoc. -->
<reference id="ref.pdo">
<title>PDO Functions</title>
<titleabbrev>PDO</titleabbrev>
<partintro>
<section id="pdo.intro">
&reftitle.intro;
<para>
&warn.experimental;
The PHP Data Objects (PDO) extension defines a lightweight, consistent interface
for accessing databases in PHP. Each database driver that
implements the PDO interface can expose database-specific
features as regular extension functions. Note that you cannot
perform any database functions using the PDO extension by
itself; you must use a <link linkend="pdo.drivers">database-specific
PDO driver</link> to access a database server.
</para>
</section>
<section id="pdo.installation">
&reftitle.install;
<!-- Uncomment this section when PDO actually stabilizes and PEAR method
works -->
<!--
<para>
PDO is currently available as a PECL extension from
<ulink url='&url.pecl.package;pdo'>&url.pecl.package;pdo</ulink>.
Ensure you have installed the CLI version of PHP and that the
<command>pear</command> and <command>phpize</command> scripts are
available in your current path.
</para>
<para>
Run the following command to download, build, and install the
latest stable version of PDO:
<screen>
<![CDATA[
pear install pdo
]]>
</screen>
</para>
<para>
The <command>pear</command> command automatically installs the
PDO module into your PHP extensions directory. To enable the
PDO extension on Linux or Unix operating systems, you must add
the following line to &php.ini;:
<screen>
<![CDATA[
extension=pdo.so
]]>
</screen>
</para>
-->
<procedure id='installwindows'>
<title>Windows</title>
<para>
Follow the same steps to install and enable the PDO drivers of your
choice.
</para>
<step>
<para>
Windows users can download the extension DLL <filename>php_pdo.dll</filename>
as part of the PECL collection binaries from
<ulink url='&url.php.downloads;'>&url.php.downloads;</ulink> or a more
recent version from a <ulink url="&url.pecl.get.win.php5.0;">PHP 5 PECL
Snapshot</ulink>.
</para>
</step>
<step>
<para>
To enable the PDO extension on Windows operating systems, you must
add the following line to &php.ini;:
<screen>
<![CDATA[
extension=php_pdo.dll
]]>
</screen>
</para>
</step>
<step>
<para>
Next, choose the other DB specific DLL files and either use
<function>dl</function> to load them at runtime, or enable them in
&php.ini; below <filename>pdo_pdo.dll</filename>. For example:
<screen>
<![CDATA[
extension=php_pdo.dll
extension=php_firebird.dll
extension=php_mssql.dll
extension=php_mysql.dll
extension=php_oci.dll
extension=php_oci8.dll
extension=php_odbc.dll
extension=php_pgsql.dll
extension=php_sqlite.dll
]]>
</screen>
</para>
<para>
These DLL's should exist in the systems
<link linkend="ini.extension-dir">extension_dir</link>.
</para>
</step>
</procedure>
<procedure id='installunix'>
<title>Linux and UNIX</title>
<para>
Due to a bug in the <command>pear</command> installer you should install
the PDO package manually using the following steps:
</para>
<para>
Follow the same steps to install and enable the PDO drivers of your
choice.
</para>
<step>
<para>Download the PDO package to your local machine:
<screen>
<![CDATA[
bash$ wget http://pecl.php.net/get/PDO
]]>
</screen>
</para>
</step>
<step>
<para>
Determine your PHP <filename>bin</filename> directory. If your
PHP 5 CLI binary lives at <filename>/usr/local/php5/bin/php</filename>
then the bin dir is <filename>/usr/local/php5/bin</filename>.
</para>
</step>
<step>
<para>
Set your path so that your PHP <filename>bin</filename> directory
is at the front:
<screen>
<![CDATA[
export PATH="/usr/local/php5/bin:$PATH"
]]>
</screen>
</para>
</step>
<step>
<para>
Manually build and install the PDO extension:
<screen>
<![CDATA[
bash$ tar xzf PDO-0.2.tgz
bash$ cd PDO-0.2
bash$ phpize
bash$ ./configure
bash$ make
bash$ sudo -s
bash# make install
bash# echo extension=pdo.so >> /usr/local/php5/lib/php.ini
]]>
</screen>
</para>
</step>
</procedure>
</section>
<section id="pdo.drivers">
<title>PDO Drivers</title>
<para>
The following drivers currently implement the PDO interface:
<informaltable>
<tgroup cols='2'>
<thead>
<row>
<entry>Driver name</entry>
<entry>Supported databases</entry>
</row>
</thead>
<tbody>
<row>
<entry>PDO_DBLIB</entry>
<entry>FreeTDS / Microsoft SQL Server / Sybase</entry>
</row>
<row>
<entry>PDO_FIREBIRD</entry>
<entry>Firebird/Interbase 6</entry>
</row>
<row>
<entry>PDO_MYSQL</entry>
<entry>MySQL 3.x/4.0</entry>
</row>
<row>
<entry>PDO_OCI</entry>
<entry>Oracle Call Interface</entry>
</row>
<row>
<entry>PDO_ODBC</entry>
<entry>ODBC v3 (IBM DB2 and unixODBC)</entry>
</row>
<row>
<entry>PDO_PGSQL</entry>
<entry>PostgreSQL</entry>
</row>
<row>
<entry>PDO_SQLITE</entry>
<entry>SQLite 3.x</entry>
</row>
</tbody>
</tgroup>
</informaltable>
</para>
</section>
<section id='pdo.classes'>
&reftitle.classes;
<section id='pdo.class.PDO'>
<title><classname>PDO</classname></title>
<para>
Represents a connection between PHP and a database server.
</para>
<section id='pdo.class.PDO.constructor'>
&reftitle.constructor;
<itemizedlist>
<listitem>
<para>
<link linkend='function.PDO-construct'>PDO</link> - constructs a new
PDO object
</para>
</listitem>
</itemizedlist>
</section>
<section id='pdo.class.PDO.methods'>
&reftitle.methods;
<itemizedlist>
<listitem>
<para>
<link linkend='function.PDO-beginTransaction'>beginTransaction</link>
- begins a transaction
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-commit'>commit</link>
- commits a transaction
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-exec'>exec</link>
- issues an SQL statement and returns the number of affected rows
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-errorCode'>errorCode</link>
- retrieves an error code, if any, from the database
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-errorInfo'>errorInfo</link>
- retrieves an array of error information, if any, from the
database
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-getAttribute'>getAttribute</link>
- retrieves a database connection attribute
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-lastInsertId'>lastInsertId</link>
- retrieves the value of the last row that was inserted into a table
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-prepare'>prepare</link>
- prepares an SQL statement for execution
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-query'>query</link>
- issues an SQL statement and returns a result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-quote'>quote</link>
- returns a quoted version of a string for use in SQL statements
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-rollBack'>rollBack</link>
- roll back a transaction
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDO-setAttribute'>setAttribute</link>
- sets a database connection attribute
</para>
</listitem>
</itemizedlist>
</section>
</section>
<section id='pdo.class.PDOStatement'>
<title><classname>PDOStatement</classname></title>
<para>
Represents a prepared statement and, after the statement is executed, an
associated result set.
</para>
<section id='pdo.class.Statement.methods'>
&reftitle.methods;
<itemizedlist>
<listitem>
<para>
<link linkend='function.PDOStatement-bindColumn'>bindColumn</link>
- binds a PHP variable to an output column in a result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-bindParam'>bindParam</link>
- binds a PHP variable to a parameter in the prepared statement
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-columnCount'>columnCount</link>
- returns the number of columns in the result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-errorCode'>errorCode</link>
- retrieves an error code, if any, from the statement
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-errorInfo'>errorInfo</link>
- retrieves an array of error information, if any, from the statement
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-execute'>execute</link>
- executes a prepared statement
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-fetch'>fetch</link>
- fetches a row from a result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-fetchAll'>fetchAll</link>
- fetches an array containing all of the rows from a result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-fetchSingle'>fetchSingle</link>
- returns the data from the first column in a result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-getAttribute'>getAttribute</link>
- retrieves a PDOStatement attribute
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-getColumnMeta'>getColumnMeta</link>
- retrieves metadata for a column in the result set
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-rowCount'>rowCount</link>
- returns the number of rows that were affected by the execution of
an SQL statement
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-setAttribute'>setAttribute</link>
- sets a PDOStatement attribute
</para>
</listitem>
<listitem>
<para>
<link linkend='function.PDOStatement-setFetchMode'>setFetchMode</link>
- sets the fetch mode for a PDOStatement
</para>
</listitem>
</itemizedlist>
</section>
</section>
</section>
&reference.pdo.constants;
</partintro>
&reference.pdo.functions;
</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
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"../../../manual.ced"
sgml-exposed-tags:nil
sgml-local-catalogs:nil
sgml-local-ecat-files:nil
End:
vim600: syn=xml fen fdm=syntax fdl=2 si
vim: et tw=78 syn=sgml
vi: ts=1 sw=1
-->