List:Commits« Previous MessageNext Message »
From:paul Date:January 28 2006 7:12pm
Subject:svn commit - mysqldoc@docsrva: r1078 - in trunk: . refman-4.1 refman-5.0 refman-5.1
View as plain text  
Author: paul
Date: 2006-01-28 20:12:41 +0100 (Sat, 28 Jan 2006)
New Revision: 1078

Log:
 r6806@frost:  paul | 2006-01-28 09:49:55 -0600
 General revisions.


Modified:
   trunk/
   trunk/refman-4.1/database-administration.xml
   trunk/refman-4.1/replication.xml
   trunk/refman-4.1/sql-syntax.xml
   trunk/refman-4.1/storage-engines.xml
   trunk/refman-4.1/tutorial.xml
   trunk/refman-5.0/replication.xml
   trunk/refman-5.0/sql-syntax.xml
   trunk/refman-5.0/storage-engines.xml
   trunk/refman-5.0/tutorial.xml
   trunk/refman-5.1/replication.xml
   trunk/refman-5.1/sql-syntax.xml
   trunk/refman-5.1/storage-engines.xml
   trunk/refman-5.1/tutorial.xml


Property changes on: trunk
___________________________________________________________________
Name: svk:merge
   - b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6801
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2588
   + b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:6806
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:2588

Modified: trunk/refman-4.1/database-administration.xml
===================================================================
--- trunk/refman-4.1/database-administration.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-4.1/database-administration.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -20312,7 +20312,8 @@
         If a transaction that is rolled back includes modifications to
         non-transactional tables, the entire transaction is logged with
         a <literal>ROLLBACK</literal> statement at the end to ensure
-        that the modifications to those tables are replicated.
+        that the modifications to those tables are replicated. This is
+        true as of MySQL 4.0.15.
       </para>
 
       <para>

Modified: trunk/refman-4.1/replication.xml
===================================================================
--- trunk/refman-4.1/replication.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-4.1/replication.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -1942,7 +1942,7 @@
           effect as follows: The first time that the master uses each
           <literal>MEMORY</literal> table after startup, it notifies
           slaves that the table needs to be emptied by writing a
-          <literal>DELETE FROM</literal> statement for that table to the
+          <literal>DELETE</literal> statement for that table to the
           binary log. See <xref linkend="memory-storage-engine"/>, for
           more information.
         </para>

Modified: trunk/refman-4.1/sql-syntax.xml
===================================================================
--- trunk/refman-4.1/sql-syntax.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-4.1/sql-syntax.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -7308,10 +7308,8 @@
 
 <programlisting>
 SELECT ...
-UNION [ALL | DISTINCT]
-SELECT ...
-  [UNION [ALL | DISTINCT]
-   SELECT ...]
+UNION [ALL | DISTINCT] SELECT ...
+[UNION [ALL | DISTINCT] SELECT ...]
 </programlisting>
 
         <remark role="help-description-begin"/>
@@ -7363,12 +7361,12 @@
         </itemizedlist>
 
         <para>
-          If you do not use the keyword <literal>ALL</literal> for the
-          <literal>UNION</literal>, all returned rows are unique, as if
-          you had done a <literal>DISTINCT</literal> for the total
-          result set. If you specify <literal>ALL</literal>, you get all
-          matching rows from all the used <literal>SELECT</literal>
-          statements.
+          If you specify the <literal>ALL</literal> keyword, the result
+          includes all matching rows from all the
+          <literal>SELECT</literal> statements. If you specify
+          <literal>DISTINCT</literal>, duplicate rows are removed from
+          the result. If neither keyword is used, the default behavior
+          is as for <literal>DISTINCT</literal> (duplicate row removal).
         </para>
 
         <para>
@@ -7401,9 +7399,9 @@
         </para>
 
 <programlisting>
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=10 AND B=1)
+(SELECT a FROM t1 WHERE a=10 AND B=1)
 UNION
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=11 AND B=2)
+(SELECT a FROM t2 WHERE a=11 AND B=2)
 ORDER BY a LIMIT 10;
 </programlisting>
 
@@ -7415,16 +7413,16 @@
           <literal>SELECT</literal> statement and refer to the alias in
           the <literal>ORDER BY</literal>, or else refer to the column
           in the <literal>ORDER BY</literal> using its column position.
-          (An alias is preferable because using column positions is
+          (An alias is preferable because use of column positions is
           deprecated.)
         </para>
 
         <para>
           Also, if a column to be sorted is aliased, the <literal>ORDER
-          BY</literal> clause must refer to the alias, not the column
-          name. The first of the following statements will work, but the
-          second will fail with an <literal>Unknown column 'a' in 'order
-          clause'</literal> error:
+          BY</literal> clause <emphasis>must</emphasis> refer to the
+          alias, not the column name. The first of the following
+          statements will work, but the second will fail with an
+          <literal>Unknown column 'a' in 'order clause'</literal> error:
         </para>
 
 <programlisting>
@@ -7671,9 +7669,9 @@
           There are a few contexts in which a scalar subquery cannot be
           used. If a statement allows only a literal value, you cannot
           use a subquery. For example, <literal>LIMIT</literal> requires
-          literal integer arguments, and <literal>LOAD DATA</literal>
-          requires a literal string filename. You cannot use subqueries
-          to supply these values.
+          literal integer arguments, and <literal>LOAD DATA
+          INFILE</literal> requires a literal string filename. You
+          cannot use subqueries to supply these values.
         </para>
 
         <para>
@@ -7710,7 +7708,7 @@
         </para>
 
         <para>
-          A scalar subquery can be part of an expression. Don't forget
+          A scalar subquery can be part of an expression, but remember
           the parentheses, even if the subquery is an operand that
           provides an argument for a function. For example:
         </para>
@@ -7968,7 +7966,7 @@
 
         <para>
           The discussion to this point has been of scalar or column
-          subqueries, that is, subqueries that return a single value or
+          subqueries; that is, subqueries that return a single value or
           a column of values. A <emphasis>row subquery</emphasis> is a
           subquery variant that returns a single row and can thus return
           more than one column value. Here are two examples:
@@ -8103,8 +8101,9 @@
           exist with a store that is not in
           <literal>Stores</literal></quote>? But it is easier to say
           that a nested <literal>NOT EXISTS</literal> answers the
-          question <quote>is x <literal>TRUE</literal> for all
-          y?</quote>
+          question <quote>is <replaceable>x</replaceable>
+          <literal>TRUE</literal> for all
+          <replaceable>y</replaceable>?</quote>
         </para>
 
       </section>
@@ -8306,7 +8305,7 @@
 
         <para>
           There are some errors that apply only to subqueries. This
-          section groups them together.
+          section describes them.
         </para>
 
         <itemizedlist>
@@ -8382,7 +8381,7 @@
 
             <para>
               If <literal>SELECT column1 FROM t2</literal> returns just
-              one row the previous query will work. If the subquery
+              one row, the previous query will work. If the subquery
               returns more than one row, error 1242 will occur. In that
               case, the query should be rewritten as:
             </para>
@@ -8441,8 +8440,8 @@
 
         <para>
           Development is ongoing, so no optimization tip is reliable for
-          the long term. Some interesting tricks that you might want to
-          play with are:
+          the long term. The following list provides some interesting
+          tricks that you might want to play with:
         </para>
 
         <itemizedlist>
@@ -8561,8 +8560,9 @@
 
           <listitem>
             <para>
-              Use <literal>x = ANY (table containing (1,2))</literal>
-              rather than <literal>x=1 OR x=2</literal>.
+              Use <literal>x = ANY (<replaceable>table containing
+              (1,2)</replaceable>)</literal> rather than <literal>x=1 OR
+              x=2</literal>.
             </para>
           </listitem>
 
@@ -8601,7 +8601,7 @@
           These tricks might cause programs to go faster or slower.
           Using MySQL facilities like the <literal>BENCHMARK()</literal>
           function, you can get an idea about what helps in your own
-          situation.
+          situation. See <xref linkend="information-functions"/>.
         </para>
 
         <para>
@@ -8719,7 +8719,7 @@
 </programlisting>
 
         <para>
-          Can be also be rewritten using <literal>IN()</literal>:
+          Can be be rewritten using <literal>IN()</literal>:
         </para>
 
 <programlisting>
@@ -8846,8 +8846,8 @@
 
       <para>
         For other storage engines, <literal>TRUNCATE TABLE</literal>
-        differs from <literal>DELETE FROM</literal> in the following
-        ways from MySQL 4.0 onward:
+        differs from <literal>DELETE</literal> in the following ways
+        from MySQL 4.0 onward:
       </para>
 
       <itemizedlist>
@@ -9188,21 +9188,17 @@
       <para>
         <literal>DESCRIBE</literal> provides information about the
         columns in a table. It is a shortcut for <literal>SHOW COLUMNS
-        FROM</literal>.
+        FROM</literal>. (See <xref linkend="show-columns"/>.)
       </para>
 
       <remark role="help-description-end"/>
 
       <para>
-        See <xref linkend="show-columns"/>.
-      </para>
-
-      <para>
         <replaceable>col_name</replaceable> can be a column name, or a
         string containing the SQL &lsquo;<literal>%</literal>&rsquo; and
         &lsquo;<literal>_</literal>&rsquo; wildcard characters to obtain
         output only for the columns with names matching the string.
-        There is no need to enclose the string in quotes unless it
+        There is no need to enclose the string within quotes unless it
         contains spaces or other special characters.
       </para>
 
@@ -9221,6 +9217,10 @@
 </programlisting>
 
       <para>
+        <literal>Field</literal> indicates the column name.
+      </para>
+
+      <para>
         The <literal>Null</literal> field indicates whether
         <literal>NULL</literal> values can be stored in the column, with
         <literal>YES</literal> displayed when <literal>NULL</literal>
@@ -9264,9 +9264,9 @@
 
       <para>
         The <literal>Extra</literal> field contains any additional
-        information that is available about a given column. In our
-        example, the <literal>Extra</literal> field indicates that the
-        <literal>Id</literal> column was created with the
+        information that is available about a given column. In the
+        example shown, the <literal>Extra</literal> field indicates that
+        the <literal>Id</literal> column was created with the
         <literal>AUTO_INCREMENT</literal> keyword.
       </para>
 
@@ -9316,19 +9316,19 @@
         statement tells MySQL to use the
         <replaceable>db_name</replaceable> database as the default
         (current) database for subsequent statements. The database
-        remains the default until the end of the session or until a
-        different <literal>USE</literal> statement is issued:
+        remains the default until the end of the session or another
+        <literal>USE</literal> statement is issued:
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db1.mytable</userinput>
-mysql&gt; <userinput>USE db2;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db2.mytable</userinput>
+USE db1;
+SELECT COUNT(*) FROM mytable;   # selects from db1.mytable
+USE db2;
+SELECT COUNT(*) FROM mytable;   # selects from db2.mytable
 </programlisting>
 
       <para>
-        Making a particular database current by means of the
+        Making a particular database the default by means of the
         <literal>USE</literal> statement does not preclude you from
         accessing tables in other databases. The following example
         accesses the <literal>author</literal> table from the
@@ -9338,9 +9338,9 @@
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT author_name,editor_name FROM author,db2.editor</userinput>
-    -&gt;        <userinput>WHERE author.editor_id = db2.editor.editor_id;</userinput>
+USE db1;
+SELECT author_name,editor_name FROM author,db2.editor
+  WHERE author.editor_id = db2.editor.editor_id;
 </programlisting>
 
       <indexterm>
@@ -9405,7 +9405,7 @@
       <remark role="help-description-begin"/>
 
       <para>
-        The <literal>START TRANSACTION</literal> or
+        The <literal>START TRANSACTION</literal> and
         <literal>BEGIN</literal> statement begin a new transaction.
         <literal>COMMIT</literal> commits the current transaction,
         making its changes permanent. <literal>ROLLBACK</literal> rolls
@@ -9440,9 +9440,8 @@
       </para>
 
       <para>
-        If you want to disable autocommit mode for a single series of
-        statements, you can use the <literal>START TRANSACTION</literal>
-        statement:
+        To disable autocommit mode for a single series of statements,
+        use the <literal>START TRANSACTION</literal> statement:
       </para>
 
       <remark role="help-description-end"/>
@@ -9726,8 +9725,9 @@
       </para>
 
       <para>
-        If the statement returns the following error, it means that no
-        save point with the specified name exists:
+        If the <literal>ROLLBACK TO SAVEPOINT</literal> statement
+        returns the following error, it means that no savepoint with the
+        specified name exists:
       </para>
 
 <programlisting>
@@ -9851,9 +9851,9 @@
       </para>
 
       <para>
-        The main reasons to use <literal>LOCK TABLES</literal> are for
-        emulating transactions or to get more speed when updating
-        tables. This is explained in more detail later.
+        The main reasons to use <literal>LOCK TABLES</literal> are to
+        emulate transactions or to get more speed when updating tables.
+        This is explained in more detail later.
       </para>
 
       <para>
@@ -9888,8 +9888,8 @@
         locks obtained with a <literal>LOCK TABLES</literal> statement
         are in effect, you cannot access any tables that were not locked
         by the statement. Also, you cannot use a locked table multiple
-        times in a single query &mdash; use aliases instead, in which
-        case you must obtain a lock for each alias separately.
+        times in a single query. Use aliases instead, in which case you
+        must obtain a lock for each alias separately.
       </para>
 
 <programlisting>
@@ -9900,9 +9900,9 @@
 </programlisting>
 
       <para>
-        If your queries refer to a table using an alias, you must lock
-        the table using that same alias. It does not work to lock the
-        table without specifying the alias:
+        If your queries refer to a table by means of an alias, you must
+        lock the table using that same alias. It does not work to lock
+        the table without specifying the alias:
       </para>
 
 <programlisting>
@@ -10041,12 +10041,12 @@
           </para>
 
 <programlisting>
-mysql&gt; <userinput>LOCK TABLES trans READ, customer WRITE;</userinput>
-mysql&gt; <userinput>SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UPDATE customer</userinput>
-    -&gt;     <userinput>SET total_value=<replaceable>sum_from_previous_statement</replaceable></userinput>
-    -&gt;     <userinput>WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UNLOCK TABLES;</userinput>
+LOCK TABLES trans READ, customer WRITE;
+SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;
+UPDATE customer
+  SET total_value=<replaceable>sum_from_previous_statement</replaceable>
+  WHERE customer_id=<replaceable>some_id</replaceable>;
+UNLOCK TABLES;
 </programlisting>
 
           <para>
@@ -10155,8 +10155,8 @@
       </para>
 
       <para>
-        You can set the initial default global isolation level for
-        <command>mysqld</command> with the
+        To set the initial default global isolation level for
+        <command>mysqld</command>, use the
         <option>--transaction-isolation</option> option. See
         <xref linkend="server-options"/>.
       </para>

Modified: trunk/refman-4.1/storage-engines.xml
===================================================================
--- trunk/refman-4.1/storage-engines.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-4.1/storage-engines.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -2012,7 +2012,7 @@
         <listitem>
           <para>
             You cannot use <literal>DROP TABLE</literal>, <literal>ALTER
-            TABLE</literal>, <literal>DELETE FROM</literal> without a
+            TABLE</literal>, <literal>DELETE</literal> without a
             <literal>WHERE</literal> clause, <literal>REPAIR
             TABLE</literal>, <literal>TRUNCATE TABLE</literal>,
             <literal>OPTIMIZE TABLE</literal>, or <literal>ANALYZE
@@ -2372,7 +2372,7 @@
         <para>
           To free memory used by a <literal>MEMORY</literal> table when
           you no longer require its contents, you should execute
-          <literal>DELETE FROM</literal> or <literal>TRUNCATE
+          <literal>DELETE</literal> or <literal>TRUNCATE
           TABLE</literal>, or remove the table altogether using
           <literal>DROP TABLE</literal>.
         </para>

Modified: trunk/refman-4.1/tutorial.xml
===================================================================
--- trunk/refman-4.1/tutorial.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-4.1/tutorial.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -2424,9 +2424,9 @@
 </programlisting>
 
         <para>
-          Note the use of <literal>GROUP BY</literal> to group together
-          all records for each <literal>owner</literal>. Without it, all
-          you get is an error message:
+          Note the use of <literal>GROUP BY</literal> to group all
+          records for each <literal>owner</literal>. Without it, all you
+          get is an error message:
         </para>
 
 <programlisting>

Modified: trunk/refman-5.0/replication.xml
===================================================================
--- trunk/refman-5.0/replication.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.0/replication.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -1899,7 +1899,7 @@
           The first time that the master uses each
           <literal>MEMORY</literal> table after startup, it notifies the
           slaves that the table needs to be emptied by writing a
-          <literal>DELETE FROM</literal> statement for that table to the
+          <literal>DELETE</literal> statement for that table to the
           binary log. See <xref linkend="memory-storage-engine"/>, for
           more information.
         </para>

Modified: trunk/refman-5.0/sql-syntax.xml
===================================================================
--- trunk/refman-5.0/sql-syntax.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.0/sql-syntax.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -7702,10 +7702,8 @@
 
 <programlisting>
 SELECT ...
-UNION [ALL | DISTINCT]
-SELECT ...
-[UNION [ALL | DISTINCT]
-SELECT ...]
+UNION [ALL | DISTINCT] SELECT ...
+[UNION [ALL | DISTINCT] SELECT ...]
 </programlisting>
 
         <remark role="help-description-begin"/>
@@ -7756,12 +7754,12 @@
         </itemizedlist>
 
         <para>
-          If you do not use the keyword <literal>ALL</literal> for the
-          <literal>UNION</literal>, all returned rows are unique, as if
-          you had done a <literal>DISTINCT</literal> for the total
-          result set. If you specify <literal>ALL</literal>, you get all
-          matching rows from all the used <literal>SELECT</literal>
-          statements.
+          If you specify the <literal>ALL</literal> keyword, the result
+          includes all matching rows from all the
+          <literal>SELECT</literal> statements. If you specify
+          <literal>DISTINCT</literal>, duplicate rows are removed from
+          the result. If neither keyword is used, the default behavior
+          is as for <literal>DISTINCT</literal> (duplicate row removal).
         </para>
 
         <para>
@@ -7793,9 +7791,9 @@
         </para>
 
 <programlisting>
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=10 AND B=1)
+(SELECT a FROM t1 WHERE a=10 AND B=1)
 UNION
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=11 AND B=2)
+(SELECT a FROM t2 WHERE a=11 AND B=2)
 ORDER BY a LIMIT 10;
 </programlisting>
 
@@ -7807,16 +7805,16 @@
           <literal>SELECT</literal> statement and refer to the alias in
           the <literal>ORDER BY</literal>, or else refer to the column
           in the <literal>ORDER BY</literal> using its column position.
-          (An alias is preferable because using column positions is
+          (An alias is preferable because use of column positions is
           deprecated.)
         </para>
 
         <para>
           Also, if a column to be sorted is aliased, the <literal>ORDER
-          BY</literal> clause must refer to the alias, not the column
-          name. The first of the following statements will work, but the
-          second will fail with an <literal>Unknown column 'a' in 'order
-          clause'</literal> error:
+          BY</literal> clause <emphasis>must</emphasis> refer to the
+          alias, not the column name. The first of the following
+          statements will work, but the second will fail with an
+          <literal>Unknown column 'a' in 'order clause'</literal> error:
         </para>
 
 <programlisting>
@@ -8000,8 +7998,10 @@
         restriction is that currently you cannot modify a table and
         select from the same table in a subquery. This applies to
         statements such as <literal>DELETE</literal>,
-        <literal>INSERT</literal>, <literal>REPLACE</literal>, and
-        <literal>UPDATE</literal>. A more comprehensive discussion of
+        <literal>INSERT</literal>, <literal>REPLACE</literal>,
+        <literal>UPDATE</literal>, and (because subqueries can be used
+        in the <literal>SET</literal> clause) <literal>LOAD DATA
+        INFILE</literal>. A more comprehensive discussion of
         restrictions on subquery use is given in
         <xref linkend="subquery-restrictions"/>.
       </para>
@@ -8042,9 +8042,9 @@
           There are a few contexts in which a scalar subquery cannot be
           used. If a statement allows only a literal value, you cannot
           use a subquery. For example, <literal>LIMIT</literal> requires
-          literal integer arguments, and <literal>LOAD DATA</literal>
-          requires a literal string filename. You cannot use subqueries
-          to supply these values.
+          literal integer arguments, and <literal>LOAD DATA
+          INFILE</literal> requires a literal string filename. You
+          cannot use subqueries to supply these values.
         </para>
 
         <para>
@@ -8081,7 +8081,7 @@
         </para>
 
         <para>
-          A scalar subquery can be part of an expression. Don't forget
+          A scalar subquery can be part of an expression, but remember
           the parentheses, even if the subquery is an operand that
           provides an argument for a function. For example:
         </para>
@@ -8339,7 +8339,7 @@
 
         <para>
           The discussion to this point has been of scalar or column
-          subqueries, that is, subqueries that return a single value or
+          subqueries; that is, subqueries that return a single value or
           a column of values. A <emphasis>row subquery</emphasis> is a
           subquery variant that returns a single row and can thus return
           more than one column value. Here are two examples:
@@ -8474,8 +8474,9 @@
           exist with a store that is not in
           <literal>Stores</literal></quote>? But it is easier to say
           that a nested <literal>NOT EXISTS</literal> answers the
-          question <quote>is x <literal>TRUE</literal> for all
-          y?</quote>
+          question <quote>is <replaceable>x</replaceable>
+          <literal>TRUE</literal> for all
+          <replaceable>y</replaceable>?</quote>
         </para>
 
       </section>
@@ -8677,7 +8678,7 @@
 
         <para>
           There are some errors that apply only to subqueries. This
-          section groups them together.
+          section describes them.
         </para>
 
         <itemizedlist>
@@ -8731,7 +8732,7 @@
 
             <para>
               If <literal>SELECT column1 FROM t2</literal> returns just
-              one row the previous query will work. If the subquery
+              one row, the previous query will work. If the subquery
               returns more than one row, error 1242 will occur. In that
               case, the query should be rewritten as:
             </para>
@@ -8790,8 +8791,8 @@
 
         <para>
           Development is ongoing, so no optimization tip is reliable for
-          the long term. Some interesting tricks that you might want to
-          play with are:
+          the long term. The following list provides some interesting
+          tricks that you might want to play with:
         </para>
 
         <itemizedlist>
@@ -8910,8 +8911,9 @@
 
           <listitem>
             <para>
-              Use <literal>x = ANY (table containing (1,2))</literal>
-              rather than <literal>x=1 OR x=2</literal>.
+              Use <literal>x = ANY (<replaceable>table containing
+              (1,2)</replaceable>)</literal> rather than <literal>x=1 OR
+              x=2</literal>.
             </para>
           </listitem>
 
@@ -8950,7 +8952,7 @@
           These tricks might cause programs to go faster or slower.
           Using MySQL facilities like the <literal>BENCHMARK()</literal>
           function, you can get an idea about what helps in your own
-          situation.
+          situation. See <xref linkend="information-functions"/>.
         </para>
 
         <para>
@@ -9042,7 +9044,7 @@
           &current-series;, it is still true that there are sometimes
           other ways to test membership in a set of values. It is also
           true that on some occasions, it is not only possible to
-          rewrite a query without a subquery, but that it can be more
+          rewrite a query without a subquery, but it can be more
           efficient to make use of some of these techniques rather than
           to use subqueries. One of these is the <literal>IN()</literal>
           construct:
@@ -9074,7 +9076,7 @@
 </programlisting>
 
         <para>
-          Can be also be rewritten using <literal>IN()</literal>:
+          Can be be rewritten using <literal>IN()</literal>:
         </para>
 
 <programlisting>
@@ -9216,8 +9218,8 @@
 
       <para>
         For other storage engines, <literal>TRUNCATE TABLE</literal>
-        differs from <literal>DELETE FROM</literal> in the following
-        ways in MySQL &current-series;:
+        differs from <literal>DELETE</literal> in the following ways in
+        MySQL &current-series;:
       </para>
 
       <itemizedlist>
@@ -9529,21 +9531,17 @@
         <literal>DESCRIBE</literal> provides information about the
         columns in a table. It is a shortcut for <literal>SHOW COLUMNS
         FROM</literal>. As of MySQL 5.0.1, these statements also display
-        information for views.
+        information for views. (See <xref linkend="show-columns"/>.)
       </para>
 
       <remark role="help-description-end"/>
 
       <para>
-        See <xref linkend="show-columns"/>.
-      </para>
-
-      <para>
         <replaceable>col_name</replaceable> can be a column name, or a
         string containing the SQL &lsquo;<literal>%</literal>&rsquo; and
         &lsquo;<literal>_</literal>&rsquo; wildcard characters to obtain
         output only for the columns with names matching the string.
-        There is no need to enclose the string in quotes unless it
+        There is no need to enclose the string within quotes unless it
         contains spaces or other special characters.
       </para>
 
@@ -9562,6 +9560,10 @@
 </programlisting>
 
       <para>
+        <literal>Field</literal> indicates the column name.
+      </para>
+
+      <para>
         The <literal>Null</literal> field indicates whether
         <literal>NULL</literal> values can be stored in the column.
       </para>
@@ -9607,9 +9609,9 @@
 
       <para>
         The <literal>Extra</literal> field contains any additional
-        information that is available about a given column. In our
-        example, the <literal>Extra</literal> field indicates that the
-        <literal>Id</literal> column was created with the
+        information that is available about a given column. In the
+        example shown, the <literal>Extra</literal> field indicates that
+        the <literal>Id</literal> column was created with the
         <literal>AUTO_INCREMENT</literal> keyword.
       </para>
 
@@ -9659,19 +9661,19 @@
         statement tells MySQL to use the
         <replaceable>db_name</replaceable> database as the default
         (current) database for subsequent statements. The database
-        remains the default until the end of the session or until a
-        different <literal>USE</literal> statement is issued:
+        remains the default until the end of the session or another
+        <literal>USE</literal> statement is issued:
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db1.mytable</userinput>
-mysql&gt; <userinput>USE db2;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db2.mytable</userinput>
+USE db1;
+SELECT COUNT(*) FROM mytable;   # selects from db1.mytable
+USE db2;
+SELECT COUNT(*) FROM mytable;   # selects from db2.mytable
 </programlisting>
 
       <para>
-        Making a particular database current by means of the
+        Making a particular database the default by means of the
         <literal>USE</literal> statement does not preclude you from
         accessing tables in other databases. The following example
         accesses the <literal>author</literal> table from the
@@ -9681,9 +9683,9 @@
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT author_name,editor_name FROM author,db2.editor</userinput>
-    -&gt;        <userinput>WHERE author.editor_id = db2.editor.editor_id;</userinput>
+USE db1;
+SELECT author_name,editor_name FROM author,db2.editor
+  WHERE author.editor_id = db2.editor.editor_id;
 </programlisting>
 
       <indexterm>
@@ -9759,7 +9761,7 @@
       <remark role="help-description-begin"/>
 
       <para>
-        The <literal>START TRANSACTION</literal> or
+        The <literal>START TRANSACTION</literal> and
         <literal>BEGIN</literal> statement begin a new transaction.
         <literal>COMMIT</literal> commits the current transaction,
         making its changes permanent. <literal>ROLLBACK</literal> rolls
@@ -9782,14 +9784,15 @@
 
       <para>
         The <literal>AND CHAIN</literal> clause causes a new transaction
-        to begin as soon as the current one end, and the new transaction
-        has the same isolation level as the just-terminated transaction.
-        The <literal>RELEASE</literal> clause causes the server to
-        disconnect the current client connection after terminating the
-        current transaction. Including the <literal>NO</literal> keyword
-        suppresses <literal>CHAIN</literal> or
-        <literal>RELEASE</literal> completion, which can be useful if
-        the <literal>completion_type</literal> system variable is set to
+        to begin as soon as the current one ends, and the new
+        transaction has the same isolation level as the just-terminated
+        transaction. The <literal>RELEASE</literal> clause causes the
+        server to disconnect the current client connection after
+        terminating the current transaction. Including the
+        <literal>NO</literal> keyword suppresses
+        <literal>CHAIN</literal> or <literal>RELEASE</literal>
+        completion, which can be useful if the
+        <literal>completion_type</literal> system variable is set to
         cause chaining or release completion by default.
       </para>
 
@@ -9819,9 +9822,8 @@
       </para>
 
       <para>
-        If you want to disable autocommit mode for a single series of
-        statements, you can use the <literal>START TRANSACTION</literal>
-        statement:
+        To disable autocommit mode for a single series of statements,
+        use the <literal>START TRANSACTION</literal> statement:
       </para>
 
       <remark role="help-description-end"/>
@@ -9847,14 +9849,17 @@
         supported as aliases of <literal>START TRANSACTION</literal> for
         initiating a transaction. <literal>START TRANSACTION</literal>
         is standard SQL syntax and is the recommended way to start an
-        ad-hoc transaction. The <literal>BEGIN</literal> statement
-        differs from the use of the <literal>BEGIN</literal> keyword
-        that starts a <literal>BEGIN ... END</literal> compound
-        statement. The latter does not begin a transaction. See
-        <xref linkend="begin-end"/>.
+        ad-hoc transaction.
       </para>
 
       <para>
+        The <literal>BEGIN</literal> statement differs from the use of
+        the <literal>BEGIN</literal> keyword that starts a
+        <literal>BEGIN ... END</literal> compound statement. The latter
+        does not begin a transaction. See <xref linkend="begin-end"/>.
+      </para>
+
+      <para>
         You can also begin a transaction like this:
       </para>
 
@@ -10119,8 +10124,9 @@
       </para>
 
       <para>
-        If the statement returns the following error, it means that no
-        savepoint with the specified name exists:
+        If the <literal>ROLLBACK TO SAVEPOINT</literal> statement
+        returns the following error, it means that no savepoint with the
+        specified name exists:
       </para>
 
 <programlisting>
@@ -10256,9 +10262,9 @@
       </para>
 
       <para>
-        The main reasons to use <literal>LOCK TABLES</literal> are for
-        emulating transactions or to get more speed when updating
-        tables. This is explained in more detail later.
+        The main reasons to use <literal>LOCK TABLES</literal> are to
+        emulate transactions or to get more speed when updating tables.
+        This is explained in more detail later.
       </para>
 
       <para>
@@ -10293,8 +10299,8 @@
         locks obtained with a <literal>LOCK TABLES</literal> statement
         are in effect, you cannot access any tables that were not locked
         by the statement. Also, you cannot use a locked table multiple
-        times in a single query &mdash; use aliases instead, in which
-        case you must obtain a lock for each alias separately.
+        times in a single query. Use aliases instead, in which case you
+        must obtain a lock for each alias separately.
       </para>
 
 <programlisting>
@@ -10305,9 +10311,9 @@
 </programlisting>
 
       <para>
-        If your queries refer to a table using an alias, you must lock
-        the table using that same alias. It does not work to lock the
-        table without specifying the alias:
+        If your queries refer to a table by means of an alias, you must
+        lock the table using that same alias. It does not work to lock
+        the table without specifying the alias:
       </para>
 
 <programlisting>
@@ -10446,12 +10452,12 @@
           </para>
 
 <programlisting>
-mysql&gt; <userinput>LOCK TABLES trans READ, customer WRITE;</userinput>
-mysql&gt; <userinput>SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UPDATE customer</userinput>
-    -&gt;     <userinput>SET total_value=<replaceable>sum_from_previous_statement</replaceable></userinput>
-    -&gt;     <userinput>WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UNLOCK TABLES;</userinput>
+LOCK TABLES trans READ, customer WRITE;
+SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;
+UPDATE customer
+  SET total_value=<replaceable>sum_from_previous_statement</replaceable>
+  WHERE customer_id=<replaceable>some_id</replaceable>;
+UNLOCK TABLES;
 </programlisting>
 
           <para>
@@ -10560,8 +10566,8 @@
       </para>
 
       <para>
-        You can set the initial default global isolation level for
-        <command>mysqld</command> with the
+        To set the initial default global isolation level for
+        <command>mysqld</command>, use the
         <option>--transaction-isolation</option> option. See
         <xref linkend="server-options"/>.
       </para>
@@ -10603,12 +10609,12 @@
 
       <para>
         Currently, among the MySQL Connectors, MySQL Connector/J 5.0.0
-        supports XA directly (that is, through a class interface that
-        handles the XA SQL statement interface for you).
+        supports XA directly (by means of a class interface that handles
+        the XA SQL statement interface for you).
       </para>
 
       <para>
-        XA supports distributed transactions, that is, the ability to
+        XA supports distributed transactions; that is, the ability to
         allow multiple separate transactional resources to participate
         in a global transaction. Transactional resources often are
         RDBMSs but may be other kinds of resources.
@@ -10621,7 +10627,7 @@
         essence, this extends ACID properties <quote>up a level</quote>
         so that multiple ACID transactions can be executed in concert as
         components of a global operation that also has ACID properties.
-        (However, for a distributed transaction, you mus use the
+        (However, for a distributed transaction, you must use the
         <literal>SERIALIZABLE</literal> isolation level to achieve ACID
         properties. It is enough to use <literal>REPEATABLE
         READ</literal> for a non-distributed transaction, but not for a
@@ -10712,14 +10718,14 @@
       </para>
 
       <para>
-        To carry out a global transaction, it's necessary to know which
+        To carry out a global transaction, it is necessary to know which
         components are involved, and bring each component to a point
         when it can be committed or rolled back. Depending on what each
         component reports about its ability to succeed, they must all
         commit or roll back as an atomic group. That is, either all
         components must commit, or all components musts roll back. To
-        manage a global transaction, it's necessary to take into account
-        that any component or the connecting network might fail.
+        manage a global transaction, it is necessary to take into
+        account that any component or the connecting network might fail.
       </para>
 
       <para>
@@ -10746,9 +10752,9 @@
             In the second phase, the TM tells the RMs whether to commit
             or roll back. If all branches indicated when they were
             prepared that they will be able to commit, all branches are
-            told to commit. If any branch indicated when prepared that
-            it will not be able to commit, all branches are told to roll
-            back.
+            told to commit. If any branch indicated when it was prepared
+            that it will not be able to commit, all branches are told to
+            roll back.
           </para>
         </listitem>
 
@@ -10756,7 +10762,7 @@
 
       <para>
         In some cases, a global transaction might use one-phase commit
-        (1PC). For example, When a Transaction Manager finds that a
+        (1PC). For example, when a Transaction Manager finds that a
         global transaction consists of only one transactional resource
         (that is, a single branch), that resource can be told to prepare
         and commit at the same time.
@@ -10897,7 +10903,7 @@
           <replaceable>bqual</replaceable> can be specified in several
           ways. You can use a quoted string (<literal>'ab'</literal>),
           hex string (<literal>0x6162</literal>,
-          <literal>X'ab'</literal>), or bit-value
+          <literal>X'ab'</literal>), or bit value
           (<literal>b'<replaceable>nnnn</replaceable>'</literal>).
         </para>
 
@@ -11142,8 +11148,9 @@
           been issued to begin an XA transaction, a local transaction
           cannot be started until the XA transaction has been committed
           or rolled back. Conversely, if a local transaction has been
-          started with START TRANSACTION, no XA statements can be used
-          until the transaction has been committed or rolled back.
+          started with <literal>START TRANSACTION</literal>, no XA
+          statements can be used until the transaction has been
+          committed or rolled back.
         </para>
 
       </section>

Modified: trunk/refman-5.0/storage-engines.xml
===================================================================
--- trunk/refman-5.0/storage-engines.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.0/storage-engines.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -1997,7 +1997,7 @@
         <listitem>
           <para>
             You cannot use <literal>DROP TABLE</literal>, <literal>ALTER
-            TABLE</literal>, <literal>DELETE FROM</literal> without a
+            TABLE</literal>, <literal>DELETE</literal> without a
             <literal>WHERE</literal> clause, <literal>REPAIR
             TABLE</literal>, <literal>TRUNCATE TABLE</literal>,
             <literal>OPTIMIZE TABLE</literal>, or <literal>ANALYZE
@@ -2331,7 +2331,7 @@
         <para>
           To free memory used by a <literal>MEMORY</literal> table when
           you no longer require its contents, you should execute
-          <literal>DELETE FROM</literal> or <literal>TRUNCATE
+          <literal>DELETE</literal> or <literal>TRUNCATE
           TABLE</literal>, or remove the table altogether using
           <literal>DROP TABLE</literal>.
         </para>
@@ -2358,8 +2358,8 @@
           tables have become empty, so it returns out-of-date content if
           you select data from them. When a <literal>MEMORY</literal>
           table is used on the master for the first time since the
-          master was started, a <literal>DELETE FROM</literal> statement
-          is written to the master's binary log automatically, thus
+          master was started, a <literal>DELETE</literal> statement is
+          written to the master's binary log automatically, thus
           synchronizing the slave to the master again. Note that even
           with this strategy, the slave still has outdated data in the
           table during the interval between the master's restart and its

Modified: trunk/refman-5.0/tutorial.xml
===================================================================
--- trunk/refman-5.0/tutorial.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.0/tutorial.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -2410,9 +2410,9 @@
 </programlisting>
 
         <para>
-          Note the use of <literal>GROUP BY</literal> to group together
-          all records for each <literal>owner</literal>. Without it, all
-          you get is an error message:
+          Note the use of <literal>GROUP BY</literal> to group all
+          records for each <literal>owner</literal>. Without it, all you
+          get is an error message:
         </para>
 
 <programlisting>

Modified: trunk/refman-5.1/replication.xml
===================================================================
--- trunk/refman-5.1/replication.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.1/replication.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -2063,8 +2063,8 @@
           replicates this effect as follows: The first time that the
           master uses each <literal>MEMORY</literal> table after
           startup, it notifies the slaves that the table needs to be
-          emptied by writing a <literal>DELETE FROM</literal> statement
-          for that table to the binary log. See
+          emptied by writing a <literal>DELETE</literal> statement for
+          that table to the binary log. See
           <xref linkend="memory-storage-engine"/>, for more information.
         </para>
       </listitem>

Modified: trunk/refman-5.1/sql-syntax.xml
===================================================================
--- trunk/refman-5.1/sql-syntax.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.1/sql-syntax.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -8283,10 +8283,8 @@
 
 <programlisting>
 SELECT ...
-UNION [ALL | DISTINCT]
-SELECT ...
-[UNION [ALL | DISTINCT]
-SELECT ...]
+UNION [ALL | DISTINCT] SELECT ...
+[UNION [ALL | DISTINCT] SELECT ...]
 </programlisting>
 
         <remark role="help-description-begin"/>
@@ -8337,12 +8335,12 @@
         </itemizedlist>
 
         <para>
-          If you do not use the keyword <literal>ALL</literal> for the
-          <literal>UNION</literal>, all returned rows are unique, as if
-          you had done a <literal>DISTINCT</literal> for the total
-          result set. If you specify <literal>ALL</literal>, you get all
-          matching rows from all the used <literal>SELECT</literal>
-          statements.
+          If you specify the <literal>ALL</literal> keyword, the result
+          includes all matching rows from all the
+          <literal>SELECT</literal> statements. If you specify
+          <literal>DISTINCT</literal>, duplicate rows are removed from
+          the result. If neither keyword is used, the default behavior
+          is as for <literal>DISTINCT</literal> (duplicate row removal).
         </para>
 
         <para>
@@ -8374,9 +8372,9 @@
         </para>
 
 <programlisting>
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=10 AND B=1)
+(SELECT a FROM t1 WHERE a=10 AND B=1)
 UNION
-(SELECT a FROM <replaceable>tbl_name</replaceable> WHERE a=11 AND B=2)
+(SELECT a FROM t2 WHERE a=11 AND B=2)
 ORDER BY a LIMIT 10;
 </programlisting>
 
@@ -8388,16 +8386,16 @@
           <literal>SELECT</literal> statement and refer to the alias in
           the <literal>ORDER BY</literal>, or else refer to the column
           in the <literal>ORDER BY</literal> using its column position.
-          (An alias is preferable because using column positions is
+          (An alias is preferable because use of column positions is
           deprecated.)
         </para>
 
         <para>
           Also, if a column to be sorted is aliased, the <literal>ORDER
-          BY</literal> clause must refer to the alias, not the column
-          name. The first of the following statements will work, but the
-          second will fail with an <literal>Unknown column 'a' in 'order
-          clause'</literal> error:
+          BY</literal> clause <emphasis>must</emphasis> refer to the
+          alias, not the column name. The first of the following
+          statements will work, but the second will fail with an
+          <literal>Unknown column 'a' in 'order clause'</literal> error:
         </para>
 
 <programlisting>
@@ -8581,8 +8579,10 @@
         restriction is that currently you cannot modify a table and
         select from the same table in a subquery. This applies to
         statements such as <literal>DELETE</literal>,
-        <literal>INSERT</literal>, <literal>REPLACE</literal>, and
-        <literal>UPDATE</literal>. A more comprehensive discussion of
+        <literal>INSERT</literal>, <literal>REPLACE</literal>,
+        <literal>UPDATE</literal>, and (because subqueries can be used
+        in the <literal>SET</literal> clause) <literal>LOAD DATA
+        INFILE</literal>. A more comprehensive discussion of
         restrictions on subquery use is given in
         <xref linkend="subquery-restrictions"/>.
       </para>
@@ -8623,9 +8623,9 @@
           There are a few contexts in which a scalar subquery cannot be
           used. If a statement allows only a literal value, you cannot
           use a subquery. For example, <literal>LIMIT</literal> requires
-          literal integer arguments, and <literal>LOAD DATA</literal>
-          requires a literal string filename. You cannot use subqueries
-          to supply these values.
+          literal integer arguments, and <literal>LOAD DATA
+          INFILE</literal> requires a literal string filename. You
+          cannot use subqueries to supply these values.
         </para>
 
         <para>
@@ -8662,7 +8662,7 @@
         </para>
 
         <para>
-          A scalar subquery can be part of an expression. Don't forget
+          A scalar subquery can be part of an expression, but remember
           the parentheses, even if the subquery is an operand that
           provides an argument for a function. For example:
         </para>
@@ -8920,7 +8920,7 @@
 
         <para>
           The discussion to this point has been of scalar or column
-          subqueries, that is, subqueries that return a single value or
+          subqueries; that is, subqueries that return a single value or
           a column of values. A <emphasis>row subquery</emphasis> is a
           subquery variant that returns a single row and can thus return
           more than one column value. Here are two examples:
@@ -9055,8 +9055,9 @@
           exist with a store that is not in
           <literal>Stores</literal></quote>? But it is easier to say
           that a nested <literal>NOT EXISTS</literal> answers the
-          question <quote>is x <literal>TRUE</literal> for all
-          y?</quote>
+          question <quote>is <replaceable>x</replaceable>
+          <literal>TRUE</literal> for all
+          <replaceable>y</replaceable>?</quote>
         </para>
 
       </section>
@@ -9258,7 +9259,7 @@
 
         <para>
           There are some errors that apply only to subqueries. This
-          section groups them together.
+          section describes them.
         </para>
 
         <itemizedlist>
@@ -9312,7 +9313,7 @@
 
             <para>
               If <literal>SELECT column1 FROM t2</literal> returns just
-              one row the previous query will work. If the subquery
+              one row, the previous query will work. If the subquery
               returns more than one row, error 1242 will occur. In that
               case, the query should be rewritten as:
             </para>
@@ -9371,8 +9372,8 @@
 
         <para>
           Development is ongoing, so no optimization tip is reliable for
-          the long term. Some interesting tricks that you might want to
-          play with are:
+          the long term. The following list provides some interesting
+          tricks that you might want to play with:
         </para>
 
         <itemizedlist>
@@ -9491,8 +9492,9 @@
 
           <listitem>
             <para>
-              Use <literal>x = ANY (table containing (1,2))</literal>
-              rather than <literal>x=1 OR x=2</literal>.
+              Use <literal>x = ANY (<replaceable>table containing
+              (1,2)</replaceable>)</literal> rather than <literal>x=1 OR
+              x=2</literal>.
             </para>
           </listitem>
 
@@ -9531,7 +9533,7 @@
           These tricks might cause programs to go faster or slower.
           Using MySQL facilities like the <literal>BENCHMARK()</literal>
           function, you can get an idea about what helps in your own
-          situation.
+          situation. See <xref linkend="information-functions"/>.
         </para>
 
         <para>
@@ -9623,7 +9625,7 @@
           &current-series;, it is still true that there are sometimes
           other ways to test membership in a set of values. It is also
           true that on some occasions, it is not only possible to
-          rewrite a query without a subquery, but that it can be more
+          rewrite a query without a subquery, but it can be more
           efficient to make use of some of these techniques rather than
           to use subqueries. One of these is the <literal>IN()</literal>
           construct:
@@ -9655,7 +9657,7 @@
 </programlisting>
 
         <para>
-          Can be also be rewritten using <literal>IN()</literal>:
+          Can be be rewritten using <literal>IN()</literal>:
         </para>
 
 <programlisting>
@@ -9783,18 +9785,18 @@
 
       <para>
         For <literal>InnoDB</literal> tables, <literal>TRUNCATE
-        TABLE</literal> is mapped to mapped to <literal>DELETE</literal>
-        if there are foreign key constraints that reference the table;
-        otherwise fast truncation (dropping and re-creating the table)
-        is used. The <literal>AUTO_INCREMENT</literal> counter is reset
-        by <literal>TRUNCATE TABLE</literal>, regardless of whether
-        there is a foreign key constraint.
+        TABLE</literal> is mapped to <literal>DELETE</literal> if there
+        are foreign key constraints that reference the table; otherwise
+        fast truncation (dropping and re-creating the table) is used.
+        The <literal>AUTO_INCREMENT</literal> counter is reset by
+        <literal>TRUNCATE TABLE</literal>, regardless of whether there
+        is a foreign key constraint.
       </para>
 
       <para>
         For other storage engines, <literal>TRUNCATE TABLE</literal>
-        differs from <literal>DELETE FROM</literal> in the following
-        ways in MySQL &current-series;:
+        differs from <literal>DELETE</literal> in the following ways in
+        MySQL &current-series;:
       </para>
 
       <itemizedlist>
@@ -10116,21 +10118,17 @@
         <literal>DESCRIBE</literal> provides information about the
         columns in a table. It is a shortcut for <literal>SHOW COLUMNS
         FROM</literal>. These statements also display information for
-        views.
+        views. (See <xref linkend="show-columns"/>.)
       </para>
 
       <remark role="help-description-end"/>
 
       <para>
-        See <xref linkend="show-columns"/>.
-      </para>
-
-      <para>
         <replaceable>col_name</replaceable> can be a column name, or a
         string containing the SQL &lsquo;<literal>%</literal>&rsquo; and
         &lsquo;<literal>_</literal>&rsquo; wildcard characters to obtain
         output only for the columns with names matching the string.
-        There is no need to enclose the string in quotes unless it
+        There is no need to enclose the string within quotes unless it
         contains spaces or other special characters.
       </para>
 
@@ -10149,6 +10147,10 @@
 </programlisting>
 
       <para>
+        <literal>Field</literal> indicates the column name.
+      </para>
+
+      <para>
         The <literal>Null</literal> field indicates whether
         <literal>NULL</literal> values can be stored in the column.
       </para>
@@ -10180,9 +10182,9 @@
 
       <para>
         The <literal>Extra</literal> field contains any additional
-        information that is available about a given column. In our
-        example, the <literal>Extra</literal> field indicates that the
-        <literal>Id</literal> column was created with the
+        information that is available about a given column. In the
+        example shown, the <literal>Extra</literal> field indicates that
+        the <literal>Id</literal> column was created with the
         <literal>AUTO_INCREMENT</literal> keyword.
       </para>
 
@@ -10225,19 +10227,19 @@
         statement tells MySQL to use the
         <replaceable>db_name</replaceable> database as the default
         (current) database for subsequent statements. The database
-        remains the default until the end of the session or until a
-        different <literal>USE</literal> statement is issued:
+        remains the default until the end of the session or another
+        <literal>USE</literal> statement is issued:
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db1.mytable</userinput>
-mysql&gt; <userinput>USE db2;</userinput>
-mysql&gt; <userinput>SELECT COUNT(*) FROM mytable;   # selects from db2.mytable</userinput>
+USE db1;
+SELECT COUNT(*) FROM mytable;   # selects from db1.mytable
+USE db2;
+SELECT COUNT(*) FROM mytable;   # selects from db2.mytable
 </programlisting>
 
       <para>
-        Making a particular database current by means of the
+        Making a particular database the default by means of the
         <literal>USE</literal> statement does not preclude you from
         accessing tables in other databases. The following example
         accesses the <literal>author</literal> table from the
@@ -10247,9 +10249,9 @@
       </para>
 
 <programlisting>
-mysql&gt; <userinput>USE db1;</userinput>
-mysql&gt; <userinput>SELECT author_name,editor_name FROM author,db2.editor</userinput>
-    -&gt;        <userinput>WHERE author.editor_id = db2.editor.editor_id;</userinput>
+USE db1;
+SELECT author_name,editor_name FROM author,db2.editor
+  WHERE author.editor_id = db2.editor.editor_id;
 </programlisting>
 
       <indexterm>
@@ -10325,7 +10327,7 @@
       <remark role="help-description-begin"/>
 
       <para>
-        The <literal>START TRANSACTION</literal> or
+        The <literal>START TRANSACTION</literal> and
         <literal>BEGIN</literal> statement begin a new transaction.
         <literal>COMMIT</literal> commits the current transaction,
         making its changes permanent. <literal>ROLLBACK</literal> rolls
@@ -10347,14 +10349,15 @@
 
       <para>
         The <literal>AND CHAIN</literal> clause causes a new transaction
-        to begin as soon as the current one end, and the new transaction
-        has the same isolation level as the just-terminated transaction.
-        The <literal>RELEASE</literal> clause causes the server to
-        disconnect the current client connection after terminating the
-        current transaction. Including the <literal>NO</literal> keyword
-        suppresses <literal>CHAIN</literal> or
-        <literal>RELEASE</literal> completion, which can be useful if
-        the <literal>completion_type</literal> system variable is set to
+        to begin as soon as the current one ends, and the new
+        transaction has the same isolation level as the just-terminated
+        transaction. The <literal>RELEASE</literal> clause causes the
+        server to disconnect the current client connection after
+        terminating the current transaction. Including the
+        <literal>NO</literal> keyword suppresses
+        <literal>CHAIN</literal> or <literal>RELEASE</literal>
+        completion, which can be useful if the
+        <literal>completion_type</literal> system variable is set to
         cause chaining or release completion by default.
       </para>
 
@@ -10384,9 +10387,8 @@
       </para>
 
       <para>
-        If you want to disable autocommit mode for a single series of
-        statements, you can use the <literal>START TRANSACTION</literal>
-        statement:
+        To disable autocommit mode for a single series of statements,
+        use the <literal>START TRANSACTION</literal> statement:
       </para>
 
       <remark role="help-description-end"/>
@@ -10412,14 +10414,17 @@
         supported as aliases of <literal>START TRANSACTION</literal> for
         initiating a transaction. <literal>START TRANSACTION</literal>
         is standard SQL syntax and is the recommended way to start an
-        ad-hoc transaction. The <literal>BEGIN</literal> statement
-        differs from the use of the <literal>BEGIN</literal> keyword
-        that starts a <literal>BEGIN ... END</literal> compound
-        statement. The latter does not begin a transaction. See
-        <xref linkend="begin-end"/>.
+        ad-hoc transaction.
       </para>
 
       <para>
+        The <literal>BEGIN</literal> statement differs from the use of
+        the <literal>BEGIN</literal> keyword that starts a
+        <literal>BEGIN ... END</literal> compound statement. The latter
+        does not begin a transaction. See <xref linkend="begin-end"/>.
+      </para>
+
+      <para>
         You can also begin a transaction like this:
       </para>
 
@@ -10583,19 +10588,6 @@
 
         <listitem>
           <para>
-            The statements <literal>CREATE TABLE</literal>,
-            <literal>CREATE DATABASE</literal> <literal>DROP
-            DATABASE</literal>, <literal>TRUNCATE TABLE</literal>,
-            <literal>ALTER FUNCTION</literal>, <literal>ALTER
-            PROCEDURE</literal>, <literal>CREATE FUNCTION</literal>,
-            <literal>CREATE PROCEDURE</literal>, <literal>DROP
-            FUNCTION</literal>, and <literal>DROP PROCEDURE</literal>
-            statements cause an implicit commit.
-          </para>
-        </listitem>
-
-        <listitem>
-          <para>
             The <literal>CREATE TABLE</literal> statement in
             <literal>InnoDB</literal> is processed as a single
             transaction. This means that a <literal>ROLLBACK</literal>
@@ -10682,8 +10674,9 @@
       </para>
 
       <para>
-        If the statement returns the following error, it means that no
-        savepoint with the specified name exists:
+        If the <literal>ROLLBACK TO SAVEPOINT</literal> statement
+        returns the following error, it means that no savepoint with the
+        specified name exists:
       </para>
 
 <programlisting>
@@ -10819,9 +10812,9 @@
       </para>
 
       <para>
-        The main reasons to use <literal>LOCK TABLES</literal> are for
-        emulating transactions or to get more speed when updating
-        tables. This is explained in more detail later.
+        The main reasons to use <literal>LOCK TABLES</literal> are to
+        emulate transactions or to get more speed when updating tables.
+        This is explained in more detail later.
       </para>
 
       <para>
@@ -10850,8 +10843,8 @@
         locks obtained with a <literal>LOCK TABLES</literal> statement
         are in effect, you cannot access any tables that were not locked
         by the statement. Also, you cannot use a locked table multiple
-        times in a single query &mdash; use aliases instead, in which
-        case you must obtain a lock for each alias separately.
+        times in a single query. Use aliases instead, in which case you
+        must obtain a lock for each alias separately.
       </para>
 
 <programlisting>
@@ -10862,9 +10855,9 @@
 </programlisting>
 
       <para>
-        If your queries refer to a table using an alias, you must lock
-        the table using that same alias. It does not work to lock the
-        table without specifying the alias:
+        If your queries refer to a table by means of an alias, you must
+        lock the table using that same alias. It does not work to lock
+        the table without specifying the alias:
       </para>
 
 <programlisting>
@@ -11003,12 +10996,12 @@
           </para>
 
 <programlisting>
-mysql&gt; <userinput>LOCK TABLES trans READ, customer WRITE;</userinput>
-mysql&gt; <userinput>SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UPDATE customer</userinput>
-    -&gt;     <userinput>SET total_value=<replaceable>sum_from_previous_statement</replaceable></userinput>
-    -&gt;     <userinput>WHERE customer_id=<replaceable>some_id</replaceable>;</userinput>
-mysql&gt; <userinput>UNLOCK TABLES;</userinput>
+LOCK TABLES trans READ, customer WRITE;
+SELECT SUM(value) FROM trans WHERE customer_id=<replaceable>some_id</replaceable>;
+UPDATE customer
+  SET total_value=<replaceable>sum_from_previous_statement</replaceable>
+  WHERE customer_id=<replaceable>some_id</replaceable>;
+UNLOCK TABLES;
 </programlisting>
 
           <para>
@@ -11117,8 +11110,8 @@
       </para>
 
       <para>
-        You can set the initial default global isolation level for
-        <command>mysqld</command> with the
+        To set the initial default global isolation level for
+        <command>mysqld</command>, use the
         <option>--transaction-isolation</option> option. See
         <xref linkend="server-options"/>.
       </para>
@@ -11159,12 +11152,12 @@
 
       <para>
         Currently, among the MySQL Connectors, MySQL Connector/J 5.0.0
-        supports XA directly (that is, through a class interface that
-        handles the XA SQL statement interface for you).
+        supports XA directly (by means of a class interface that handles
+        the XA SQL statement interface for you).
       </para>
 
       <para>
-        XA supports distributed transactions, that is, the ability to
+        XA supports distributed transactions; that is, the ability to
         allow multiple separate transactional resources to participate
         in a global transaction. Transactional resources often are
         RDBMSs but may be other kinds of resources.
@@ -11177,7 +11170,7 @@
         essence, this extends ACID properties <quote>up a level</quote>
         so that multiple ACID transactions can be executed in concert as
         components of a global operation that also has ACID properties.
-        (However, for a distributed transaction, you mus use the
+        (However, for a distributed transaction, you must use the
         <literal>SERIALIZABLE</literal> isolation level to achieve ACID
         properties. It is enough to use <literal>REPEATABLE
         READ</literal> for a non-distributed transaction, but not for a
@@ -11268,14 +11261,14 @@
       </para>
 
       <para>
-        To carry out a global transaction, it's necessary to know which
+        To carry out a global transaction, it is necessary to know which
         components are involved, and bring each component to a point
         when it can be committed or rolled back. Depending on what each
         component reports about its ability to succeed, they must all
         commit or roll back as an atomic group. That is, either all
         components must commit, or all components musts roll back. To
-        manage a global transaction, it's necessary to take into account
-        that any component or the connecting network might fail.
+        manage a global transaction, it is necessary to take into
+        account that any component or the connecting network might fail.
       </para>
 
       <para>
@@ -11302,9 +11295,9 @@
             In the second phase, the TM tells the RMs whether to commit
             or roll back. If all branches indicated when they were
             prepared that they will be able to commit, all branches are
-            told to commit. If any branch indicated when prepared that
-            it will not be able to commit, all branches are told to roll
-            back.
+            told to commit. If any branch indicated when it was prepared
+            that it will not be able to commit, all branches are told to
+            roll back.
           </para>
         </listitem>
 
@@ -11312,7 +11305,7 @@
 
       <para>
         In some cases, a global transaction might use one-phase commit
-        (1PC). For example, When a Transaction Manager finds that a
+        (1PC). For example, when a Transaction Manager finds that a
         global transaction consists of only one transactional resource
         (that is, a single branch), that resource can be told to prepare
         and commit at the same time.
@@ -11453,7 +11446,7 @@
           <replaceable>bqual</replaceable> can be specified in several
           ways. You can use a quoted string (<literal>'ab'</literal>),
           hex string (<literal>0x6162</literal>,
-          <literal>X'ab'</literal>), or bit-value
+          <literal>X'ab'</literal>), or bit value
           (<literal>b'<replaceable>nnnn</replaceable>'</literal>).
         </para>
 
@@ -11694,8 +11687,9 @@
           been issued to begin an XA transaction, a local transaction
           cannot be started until the XA transaction has been committed
           or rolled back. Conversely, if a local transaction has been
-          started with START TRANSACTION, no XA statements can be used
-          until the transaction has been committed or rolled back.
+          started with <literal>START TRANSACTION</literal>, no XA
+          statements can be used until the transaction has been
+          committed or rolled back.
         </para>
 
       </section>

Modified: trunk/refman-5.1/storage-engines.xml
===================================================================
--- trunk/refman-5.1/storage-engines.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.1/storage-engines.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -1970,7 +1970,7 @@
         <listitem>
           <para>
             You cannot use <literal>DROP TABLE</literal>, <literal>ALTER
-            TABLE</literal>, <literal>DELETE FROM</literal> without a
+            TABLE</literal>, <literal>DELETE</literal> without a
             <literal>WHERE</literal> clause, <literal>REPAIR
             TABLE</literal>, <literal>TRUNCATE TABLE</literal>,
             <literal>OPTIMIZE TABLE</literal>, or <literal>ANALYZE
@@ -2304,7 +2304,7 @@
         <para>
           To free memory used by a <literal>MEMORY</literal> table when
           you no longer require its contents, you should execute
-          <literal>DELETE FROM</literal> or <literal>TRUNCATE
+          <literal>DELETE</literal> or <literal>TRUNCATE
           TABLE</literal>, or remove the table altogether using
           <literal>DROP TABLE</literal>.
         </para>
@@ -2331,8 +2331,8 @@
           tables have become empty, so it returns out-of-date content if
           you select data from them. When a <literal>MEMORY</literal>
           table is used on the master for the first time since the
-          master was started, a <literal>DELETE FROM</literal> statement
-          is written to the master's binary log automatically, thus
+          master was started, a <literal>DELETE</literal> statement is
+          written to the master's binary log automatically, thus
           synchronizing the slave to the master again. Note that even
           with this strategy, the slave still has outdated data in the
           table during the interval between the master's restart and its

Modified: trunk/refman-5.1/tutorial.xml
===================================================================
--- trunk/refman-5.1/tutorial.xml	2006-01-28 05:53:43 UTC (rev 1077)
+++ trunk/refman-5.1/tutorial.xml	2006-01-28 19:12:41 UTC (rev 1078)
@@ -2404,9 +2404,9 @@
 </programlisting>
 
         <para>
-          Note the use of <literal>GROUP BY</literal> to group together
-          all records for each <literal>owner</literal>. Without it, all
-          you get is an error message:
+          Note the use of <literal>GROUP BY</literal> to group all
+          records for each <literal>owner</literal>. Without it, all you
+          get is an error message:
         </para>
 
 <programlisting>

Thread
svn commit - mysqldoc@docsrva: r1078 - in trunk: . refman-4.1 refman-5.0 refman-5.1paul28 Jan