--- /dev/null
+<!-- $Header: /cvsroot/pgsql/doc/src/sgml/ref/start_transaction.sgml,v 1.1 2002/08/04 05:14:06 momjian Exp $ -->
+<refentry id="SQL-START-TRANSACTION">
+ <docinfo>
+ <date>2002-07-26</date>
+ </docinfo>
+
+ <refmeta>
+ <refentrytitle id="SQL-START-TRANSACTION-TITLE">START TRANSACTION</refentrytitle>
+ <refmiscinfo>SQL - Language Statements</refmiscinfo>
+ </refmeta>
+
+ <refnamediv>
+ <refname>START TRANSACTION</refname>
+ <refpurpose>start a transaction block</refpurpose>
+ </refnamediv>
+
+ <refsynopsisdiv>
+ <synopsis>
+START TRANSACTION [ ISOLATION LEVEL { READ COMMITTED | SERIALIZABLE } ]
+ </synopsis>
+
+ <refsect2 id="R2-SQL-START-TRANSACTION-1">
+ <refsect2info>
+ <date>1998-09-27</date>
+ </refsect2info>
+ <title>
+ Inputs
+ </title>
+
+ <para>
+ None.
+ </para>
+ </refsect2>
+
+ <refsect2 id="R2-SQL-START-TRANSACTION-2">
+ <refsect2info>
+ <date>1998-09-27</date>
+ </refsect2info>
+ <title>
+ Outputs
+ </title>
+
+ <para>
+
+ <variablelist>
+ <varlistentry>
+ <term><computeroutput>
+START TRANSACTION
+ </computeroutput></term>
+ <listitem>
+ <para>
+ Message returned if successful.
+ </para>
+ </listitem>
+ </varlistentry>
+ <varlistentry>
+ <term><computeroutput>
+WARNING: BEGIN: already a transaction in progress
+ </computeroutput></term>
+ <listitem>
+ <para>
+ If there is already a transaction in progress when the
+ command is issued.
+ </para>
+ </listitem>
+ </varlistentry>
+ </variablelist>
+ </para>
+ </refsect2>
+ </refsynopsisdiv>
+
+ <refsect1>
+ <title>Description</title>
+
+ <para>
+ This command begins a new transaction. If the isolation level is
+ specified, the new transaction has that isolation level. In all other
+ respects, the behavior of this command is identical to the
+ <command>BEGIN</command>.
+ </para>
+
+ </refsect1>
+
+ <refsect1>
+ <title>Notes</title>
+
+ <para>
+ The isolation level of a transaction can also be set with the <xref
+ linkend="sql-set-transaction" endterm="sql-set-transaction-title">.
+ If no isolation level is specified, the level defaults to
+ <option>READ COMMITTED</option>.
+ </para>
+ </refsect1>
+
+ <refsect1 id="R1-SQL-START-TRANSACTION-3">
+ <title>Compatibility</title>
+
+ <refsect2 id="R2-SQL-START-TRANSACTION-4">
+ <title>SQL99</title>
+
+ <para>
+ <option>SERIALIZABLE</option> is the default level in
+ <acronym>SQL</acronym>. <productname>PostgreSQL</productname>
+ does not provide the isolation levels <option>READ UNCOMMITTED</option>
+ and <option>REPEATABLE READ</option>. Because of multiversion
+ concurrency control, the <option>SERIALIZABLE</option> level is
+ not truly serializable. See the <citetitle>User's Guide</citetitle>
+ for details.
+ </para>
+
+ <para>
+ In <acronym>SQL99</acronym> this statement can specify two other
+ properties of the new transaction: whether the transaction is
+ read-only and the size of the diagnostics area. Neither of these
+ concepts are currently supported in
+ <productname>PostgreSQL</productname>.
+ </para>
+ </refsect2>
+ </refsect1>
+</refentry>
+
+<!-- Keep this comment at the end of the file
+Local variables:
+mode:sgml
+sgml-omittag:nil
+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:"../reference.ced"
+sgml-exposed-tags:nil
+sgml-local-catalogs:("/usr/lib/sgml/catalog")
+sgml-local-ecat-files:nil
+End:
+-->