File: ibase-trans.xml

package info (click to toggle)
php-doc 20061001-1
  • links: PTS
  • area: non-free
  • in suites: etch, etch-m68k
  • size: 45,764 kB
  • ctags: 1,611
  • sloc: xml: 502,485; php: 7,645; cpp: 500; makefile: 297; perl: 161; sh: 141; awk: 28
file content (72 lines) | stat: -rw-r--r-- 2,744 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
<?xml version="1.0" encoding="iso-8859-1"?>
<!-- $Revision: 1.6 $ -->
<!-- splitted from ./en/functions/ibase.xml, last change in rev 1.23 -->
  <refentry id="function.ibase-trans">
   <refnamediv>
    <refname>ibase_trans</refname>
    <refpurpose>Begin a transaction</refpurpose>
   </refnamediv>
   <refsect1>
    <title>Description</title>
     <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>
    <para>
     <parameter>trans_args</parameter> can be a combination of
     IBASE_READ, IBASE_WRITE, IBASE_COMMITTED, IBASE_CONSISTENCY,
     IBASE_CONCURRENCY, IBASE_REC_VERSION, IBASE_REC_NO_VERSION,
     IBASE_WAIT and IBASE_NOWAIT.
    </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>
  </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
-->