php-doc-en/reference/ibase/functions/ibase-trans.xml
Hannes Magnusson c030e2adf7 Upgrade to DocBook5:
- All id attributes are now xml:id
 - Add docbook namespace to all root elements
 - Replace <ulink /> with <link xlink:href />
 - Minor markup fixes here and there


git-svn-id: https://svn.php.net/repository/phpdoc/en/trunk@238160 c90b9560-bf6c-de11-be94-00142212c4b1
2007-06-20 22:25:43 +00:00

108 lines
3.4 KiB
XML

<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.9 $ -->
<refentry xmlns="http://docbook.org/ns/docbook" xml:id="function.ibase-trans">
<refnamediv>
<refname>ibase_trans</refname>
<refpurpose>Begin a transaction</refpurpose>
</refnamediv>
<refsect1 role="description">
&reftitle.description;
<methodsynopsis>
<type>resource</type><methodname>ibase_trans</methodname>
<methodparam choice="opt"><type>int</type><parameter>trans_args</parameter></methodparam>
<methodparam choice="opt"><type>resource</type><parameter>link_identifier</parameter></methodparam>
</methodsynopsis>
<para>
Begins a transaction.
</para>
<note>
<para>
The behaviour of this function has been changed in PHP 5.0.0. The first call
to <function>ibase_trans</function> will not return the default transaction
of a connection. All transactions started by <function>ibase_trans</function>
will be rolled back at the end of the script if they were not committed or
rolled back by either <function>ibase_commit</function> or
<function>ibase_rollback</function>.
</para>
</note>
<note>
<para>
In PHP 5.0.0. and up, this function will accept multiple <parameter>trans_args</parameter>
and <parameter>link_identifier</parameter> arguments. This allows transactions
over multiple database connections, which are committed using a 2-phase commit
algorithm. This means you can rely on the updates to either succeed in every
database, or fail in every database. It does NOT mean you can use tables from
different databases in the same query!
</para>
<para>
If you use transactions over multiple databases, you will have to specify both
the <parameter>link_id</parameter> and <parameter>transaction_id</parameter>
in calls to <function>ibase_query</function> and <function>ibase_prepare</function>.
</para>
</note>
</refsect1>
<refsect1 role="parameters">
&reftitle.parameters;
<para>
<variablelist>
<varlistentry>
<term><parameter>trans_args</parameter></term>
<listitem>
<para>
<parameter>trans_args</parameter> can be a combination of
<constant>IBASE_READ</constant>,
<constant>IBASE_WRITE</constant>,
<constant>IBASE_COMMITTED</constant>,
<constant>IBASE_CONSISTENCY</constant>,
<constant>IBASE_CONCURRENCY</constant>,
<constant>IBASE_REC_VERSION</constant>,
<constant>IBASE_REC_NO_VERSION</constant>,
<constant>IBASE_WAIT</constant> and
<constant>IBASE_NOWAIT</constant>.
</para>
</listitem>
</varlistentry>
<varlistentry>
<term><parameter>link_identifier</parameter></term>
<listitem>
<para>
An InterBase link identifier. If omitted, the last opened link is
assumed.
</para>
</listitem>
</varlistentry>
</variablelist>
</para>
</refsect1>
<refsect1 role="returnvalues">
&reftitle.returnvalues;
<para>
Returns a transaction handle, or &false; on error.
</para>
</refsect1>
</refentry>
<!-- 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
-->