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

162 lines
4.5 KiB
XML
Raw Normal View History

<?xml version='1.0' encoding="utf-8"?>
<!-- $Revision$ -->
<!-- Purpose: database.vendors -->
<!-- Membership: bundled, external, pecl -->
<reference xml:id="ref.pdo-mysql" xmlns="http://docbook.org/ns/docbook">
<title>MySQL Functions (PDO_MYSQL)</title>
<titleabbrev>MySQL (PDO)</titleabbrev>
<partintro>
<section xml:id="pdo-mysql.intro">
&reftitle.intro;
<para>
PDO_MYSQL is a driver that implements the <link linkend="intro.pdo">PHP
Data Objects (PDO) interface</link>
to enable access from PHP to MySQL 3.x, 4.x and 5.x databases.
</para>
<para>
PDO_MYSQL will take advantage of native prepared statement support
present in MySQL 4.1 and higher. If you're using an older version of the
mysql client libraries, PDO will emulate them for you.
</para>
<warning>
<para>
Beware: Some MySQL table types (storage engines) do not support transactions. When
writing transactional database code using a table type that does not support
transactions, MySQL will pretend that a transaction was initiated successfully.
In addition, any DDL queries issued will implicitly
commit any pending transactions.
</para>
</warning>
</section>
&reference.pdo-mysql.constants;
&reference.pdo-mysql.configuration;
</partintro>
<refentry xml:id="ref.pdo-mysql.connection">
<refnamediv>
<refname>PDO_MYSQL DSN</refname>
<refpurpose>Connecting to MySQL databases</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<para>
The PDO_MYSQL Data Source Name (DSN) is composed of the following elements:
<variablelist>
<varlistentry>
<term>DSN prefix</term>
<listitem>
<para>
The DSN prefix is <userinput>mysql:</userinput>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>host</constant></term>
<listitem>
<para>
The hostname on which the database server resides.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>port</constant></term>
<listitem>
<para>
The port number where the database server is listening.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>dbname</constant></term>
<listitem>
<para>
The name of the database.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>unix_socket</constant></term>
<listitem>
<para>
The MySQL Unix socket (shouldn't be used with <literal>host</literal>
or <literal>port</literal>).
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><constant>charset</constant></term>
<listitem>
<para>
Currently ignored.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="examples">
&reftitle.examples;
<para>
<example>
<title>PDO_MYSQL DSN examples</title>
<para>
The following example shows a PDO_MYSQL DSN for connecting to
MySQL databases:
<programlisting>
<![CDATA[
mysql:host=localhost;dbname=testdb
]]>
</programlisting>
More complete examples:
<programlisting>
<![CDATA[
mysql:host=localhost;port=3307;dbname=testdb
mysql:unix_socket=/tmp/mysql.sock;dbname=testdb
]]>
</programlisting>
</para>
</example>
</para>
</refsect1>
</refentry>
<refsect1 role="notes">
&reftitle.notes;
<note>
<title>Unix only:</title>
<para>
When PDO_MYSQL is compiled against mysqlnd, usage of <literal>localhost</literal>
as host name tells MySQL to use a Unix domain socket, requiring a default socket to
be set in the DSN string or in &php.ini; using the <link linkend="ini.pdo-mysql.default-socket">
pdo_mysql.default_socket</link> setting.
</para>
</note>
</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
indent-tabs-mode:nil
sgml-parent-document:nil
sgml-default-dtd-file:"~/.phpdoc/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
-->