List:Internals« Previous MessageNext Message »
From:paul Date:October 23 2005 2:40am
Subject:svn commit - mysqldoc@docsrva: r147 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-common
View as plain text  
Author: paul
Date: 2005-10-23 04:40:02 +0200 (Sun, 23 Oct 2005)
New Revision: 147

Log:
 r3008@frost:  paul | 2005-10-22 21:39:32 -0500
 Document bugfixes:
 Bug#12371
 Bug#12595
 Bug#13146
 Bug#13233
 Bug#14153
 Bug#14223


Modified:
   trunk/
   trunk/refman-4.1/sql-syntax.xml
   trunk/refman-5.0/functions.xml
   trunk/refman-5.0/stored-procedures.xml
   trunk/refman-5.1/functions.xml
   trunk/refman-5.1/stored-procedures.xml
   trunk/refman-common/news-4.1.xml
   trunk/refman-common/news-5.0.xml


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

Modified: trunk/refman-4.1/sql-syntax.xml
===================================================================
--- trunk/refman-4.1/sql-syntax.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-4.1/sql-syntax.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -4500,9 +4500,8 @@
           <listitem>
             <para>
               <literal>INSERT DELAYED</literal> works only with
-              <literal>ISAM</literal>, <literal>MyISAM</literal>,
-              (beginning with MySQL 4.1) <literal>MEMORY</literal>, and
-              <literal>ARCHIVE</literal> tables. For
+              <literal>ISAM</literal>, <literal>MyISAM</literal>, and
+              (beginning with MySQL 4.1) <literal>MEMORY</literal>. For
               <literal>MyISAM</literal> tables, if there are no free
               blocks in the middle of the data file, concurrent
               <literal>SELECT</literal> and <literal>INSERT</literal>
@@ -7312,11 +7311,11 @@
         </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 statments will
-          work, but the second will fail with an <literal>Unknown column
-          'a' in 'order clause'</literal> error:
+          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 statments will work, but the
+          second will fail with an <literal>Unknown column 'a' in 'order
+          clause'</literal> error:
         </para>
 
 <programlisting>

Modified: trunk/refman-5.0/functions.xml
===================================================================
--- trunk/refman-5.0/functions.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-5.0/functions.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -315,8 +315,8 @@
 
       <para>
         Note that when you are comparing a string column with a number,
-        MySQL cannot use an index on the column to look up the
-        value quickly. If <replaceable>str_col</replaceable> is an indexed
+        MySQL cannot use an index on the column to look up the value
+        quickly. If <replaceable>str_col</replaceable> is an indexed
         string column, the index cannot be used when performing the
         lookup in the following statement:
       </para>
@@ -399,8 +399,8 @@
             <literal>NULL</literal>-safe equal. This operator performs
             an equality comparison like the <literal>=</literal>
             operator, but returns <literal>1</literal> rather than
-            <literal>NULL</literal>
-            if both operands are <literal>NULL</literal>, and <literal>0</literal> rather
+            <literal>NULL</literal> if both operands are
+            <literal>NULL</literal>, and <literal>0</literal> rather
             than <literal>NULL</literal> if one operand
             is<literal>NULL</literal>.
           </para>
@@ -1317,7 +1317,7 @@
 
           <para>
             Note that the precedence of the <literal>NOT</literal>
-            operator changed in MySQL 5.0.2. See 
+            operator changed in MySQL 5.0.2. See
             <xref linkend="operator-precedence"/>.
           </para>
         </listitem>
@@ -1352,8 +1352,8 @@
             Logical AND. Evaluates to <literal>1</literal> if all
             operands are non-zero and not <literal>NULL</literal>, to
             <literal>0</literal> if one or more operands are
-            <literal>0</literal>, otherwise
-            <literal>NULL</literal> is returned.
+            <literal>0</literal>, otherwise <literal>NULL</literal> is
+            returned.
           </para>
 
           <remark role="help-description-end"/>
@@ -1612,14 +1612,14 @@
           If only one of <replaceable>expr2</replaceable> or
           <replaceable>expr3</replaceable> is explicitly
           <literal>NULL</literal>, the result type of the
-          <literal>IF()</literal> function is the type of
-          the non-<literal>NULL</literal> expression.
+          <literal>IF()</literal> function is the type of the
+          non-<literal>NULL</literal> expression.
         </para>
 
         <para>
-          <replaceable>expr1</replaceable> is evaluated as an integer value,
-          which means that if you are testing floating-point or string
-          values, you should do so using a comparison operation.
+          <replaceable>expr1</replaceable> is evaluated as an integer
+          value, which means that if you are testing floating-point or
+          string values, you should do so using a comparison operation.
         </para>
 
 <programlisting>
@@ -1633,8 +1633,8 @@
           In the first case shown, <literal>IF(0.1)</literal> returns
           <literal>0</literal> because <literal>0.1</literal> is
           converted to an integer value, resulting in a test of
-          <literal>IF(0)</literal>. This may not be what you
-          expect. In the second case, the comparison tests the original
+          <literal>IF(0)</literal>. This may not be what you expect. In
+          the second case, the comparison tests the original
           floating-point value to see whether it is non-zero. The result
           of the comparison is used as an integer.
         </para>
@@ -1655,16 +1655,18 @@
                 <entry><emphasis role="bold">Return Value</emphasis></entry>
               </row>
               <row>
-                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable> returns a string</entry>
+                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable>
+                  returns a string</entry>
                 <entry>string</entry>
               </row>
               <row>
-                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable> returns a
-                  floating-point value</entry>
+                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable>
+                  returns a floating-point value</entry>
                 <entry>floating-point</entry>
               </row>
               <row>
-                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable> returns an integer</entry>
+                <entry><replaceable>expr2</replaceable> or <replaceable>expr3</replaceable>
+                  returns an integer</entry>
                 <entry>integer</entry>
               </row>
             </tbody>
@@ -1672,7 +1674,8 @@
         </informaltable>
 
         <para>
-          If <replaceable>expr2</replaceable> and <replaceable>expr3</replaceable> are both strings, the result
+          If <replaceable>expr2</replaceable> and
+          <replaceable>expr3</replaceable> are both strings, the result
           is case sensitive if either string is case sensitive.
         </para>
       </listitem>
@@ -1845,9 +1848,10 @@
         <para>
           Returns the numeric value of the leftmost character of the
           string <replaceable>str</replaceable>. Returns
-          <literal>0</literal> if <replaceable>str</replaceable> is the empty string. Returns
-          <literal>NULL</literal> if <replaceable>str</replaceable> is
-          <literal>NULL</literal>. <literal>ASCII()</literal> works for characters with numeric
+          <literal>0</literal> if <replaceable>str</replaceable> is the
+          empty string. Returns <literal>NULL</literal> if
+          <replaceable>str</replaceable> is <literal>NULL</literal>.
+          <literal>ASCII()</literal> works for characters with numeric
           values from <literal>0</literal> to <literal>255</literal>.
         </para>
 
@@ -1961,11 +1965,10 @@
         <remark role="help-description-begin"/>
 
         <para>
-          <literal>CHAR()</literal> interprets each
-          argument <replaceable>N</replaceable> as an integer and
-          returns a string consisting of the characters given by the
-          code values of those integers. <literal>NULL</literal> values
-          are skipped.
+          <literal>CHAR()</literal> interprets each argument
+          <replaceable>N</replaceable> as an integer and returns a
+          string consisting of the characters given by the code values
+          of those integers. <literal>NULL</literal> values are skipped.
         </para>
 
         <remark role="help-description-end"/>
@@ -2028,8 +2031,8 @@
         <para>
           Before MySQL 5.0.15, <literal>CHAR()</literal> returns a
           string in the connection character set and the
-          <literal>USING</literal> clause is unavailable. In addition, each
-          argument is interpreted modulo 256, so
+          <literal>USING</literal> clause is unavailable. In addition,
+          each argument is interpreted modulo 256, so
           <literal>CHAR(256)</literal> and
           <literal>CHAR(256*256)</literal> both are equivalent to
           <literal>CHAR(0)</literal>.
@@ -2471,8 +2474,8 @@
           type <literal>SET</literal>, the
           <literal>FIND_IN_SET()</literal> function is optimized to use
           bit arithmetic. Returns <literal>0</literal> if
-          <replaceable>str</replaceable> is
-          not in <replaceable>strlist</replaceable> or if
+          <replaceable>str</replaceable> is not in
+          <replaceable>strlist</replaceable> or if
           <replaceable>strlist</replaceable> is the empty string.
           Returns <literal>NULL</literal> if either argument is
           <literal>NULL</literal>. This function does not work properly
@@ -2541,11 +2544,11 @@
         </para>
 
         <para>
-          If <replaceable>N_OR_S</replaceable>
-          is a string, returns a hexadecimal string representation of
+          If <replaceable>N_OR_S</replaceable> is a string, returns a
+          hexadecimal string representation of
           <replaceable>N_OR_S</replaceable> where each character in
-          <replaceable>N_OR_S</replaceable> is converted to
-          two hexadecimal digits.
+          <replaceable>N_OR_S</replaceable> is converted to two
+          hexadecimal digits.
         </para>
 
         <remark role="help-description-end"/>
@@ -2792,11 +2795,8 @@
            SET <replaceable>blob_column</replaceable>=LOAD_FILE('/tmp/picture')
            WHERE id=1;
 </programlisting>
+      </listitem>
 
-
-
-</listitem>
-
       <listitem>
         <remark role="help-topic" condition="LOCATE"/>
 
@@ -3190,8 +3190,9 @@
           single quote (&lsquo;<literal>'</literal>&rsquo;), backslash
           (&lsquo;<literal>\</literal>&rsquo;), ASCII
           <literal>NUL</literal>, and Control-Z preceded by a backslash.
-          If the argument is <literal>NULL</literal>, the return value is the word
-          <quote>NULL</quote> without surrounding single quotes.
+          If the argument is <literal>NULL</literal>, the return value
+          is the word <quote>NULL</quote> without surrounding single
+          quotes.
         </para>
 
         <remark role="help-description-end"/>
@@ -3927,7 +3928,8 @@
 
       <para>
         If you want to convert a number to a string explicitly, use the
-        <literal>CAST()</literal> or <literal>CONCAT()</literal> function:
+        <literal>CAST()</literal> or <literal>CONCAT()</literal>
+        function:
       </para>
 
 <programlisting>
@@ -4087,6 +4089,13 @@
 </programlisting>
 
           <para>
+            The escape sequence should be empty or one character long.
+            As of MySQL 5.0.16, if the
+            <literal>NO_BACKSLASH_ESCAPES</literal> SQL mode is enabled,
+            the sequence cannot be empty.
+          </para>
+
+          <para>
             The following two statements illustrate that string
             comparisons are not case sensitive unless one of the
             operands is a binary string:
@@ -4246,9 +4255,10 @@
           </para>
 
           <para>
-            <emphasis role="bold">Note</emphasis>: Because MySQL uses the C escape syntax in strings (for
-            example, &lsquo;<literal>\n</literal>&rsquo; to represent
-            the newline character), you must double any
+            <emphasis role="bold">Note</emphasis>: Because MySQL uses
+            the C escape syntax in strings (for example,
+            &lsquo;<literal>\n</literal>&rsquo; to represent the newline
+            character), you must double any
             &lsquo;<literal>\</literal>&rsquo; that you use in your
             <literal>REGEXP</literal> strings.
           </para>
@@ -4484,8 +4494,9 @@
             <emphasis role="bold">Note</emphasis>: If this operator is
             used with a <literal>BIGINT</literal>, the return value is
             also a <literal>BIGINT</literal>. This means that you should
-            avoid using <literal>&minus;</literal> on integers that may have the
-            value of <literal>&minus;2<superscript>63</superscript></literal>.
+            avoid using <literal>&minus;</literal> on integers that may
+            have the value of
+            <literal>&minus;2<superscript>63</superscript></literal>.
           </para>
         </listitem>
 
@@ -4792,8 +4803,9 @@
           <remark role="help-description-begin"/>
 
           <para>
-            Returns the arc tangent of <replaceable>X</replaceable>, that
-            is, the value whose tangent is <replaceable>X</replaceable>.
+            Returns the arc tangent of <replaceable>X</replaceable>,
+            that is, the value whose tangent is
+            <replaceable>X</replaceable>.
           </para>
 
           <remark role="help-description-end"/>
@@ -5520,9 +5532,9 @@
           <para>
             Returns a random floating-point value in the range from
             <literal>0</literal> to <literal>1.0</literal>. If an
-            integer argument <replaceable>N</replaceable> is
-            specified, it is used as the seed value, which produces a
-            repeatable sequence.
+            integer argument <replaceable>N</replaceable> is specified,
+            it is used as the seed value, which produces a repeatable
+            sequence.
           </para>
 
           <remark role="help-description-end"/>
@@ -5548,8 +5560,8 @@
             You cannot use a column with <literal>RAND()</literal>
             values in an <literal>ORDER BY</literal> clause, because
             <literal>ORDER BY</literal> would evaluate the column
-            multiple times. However, you can retrieve rows in
-            random order like this:
+            multiple times. However, you can retrieve rows in random
+            order like this:
           </para>
 
 <programlisting>
@@ -5630,9 +5642,9 @@
 
           <para>
             The return type is the same type as that of the first
-            argument (assuming that it is integer, double, or decimal). This
-            means that for an integer argument, the result is an integer
-            (no decimals).
+            argument (assuming that it is integer, double, or decimal).
+            This means that for an integer argument, the result is an
+            integer (no decimals).
           </para>
 
           <para>
@@ -5864,10 +5876,10 @@
             to <replaceable>D</replaceable> decimals. If
             <replaceable>D</replaceable> is <literal>0</literal>, the
             result has no decimal point or fractional part.
-            <replaceable>D</replaceable> can
-            be negative in order to truncate (make zero)
-            <replaceable>D</replaceable> digits left of the decimal
-            point of the value <replaceable>X</replaceable>.
+            <replaceable>D</replaceable> can be negative in order to
+            truncate (make zero) <replaceable>D</replaceable> digits
+            left of the decimal point of the value
+            <replaceable>X</replaceable>.
           </para>
 
           <remark role="help-description-end"/>
@@ -6413,7 +6425,8 @@
 
         <para>
           The <literal>INTERVAL</literal> keyword and the
-          <replaceable>type</replaceable> specifier are not case sensitive.
+          <replaceable>type</replaceable> specifier are not case
+          sensitive.
         </para>
 
         <para>
@@ -6589,11 +6602,11 @@
           hours, minutes, and seconds parts. If you specify a value like
           <literal>'1:10'</literal>, MySQL assumes that the days and
           hours parts are missing and the value represents minutes and
-          seconds. In other words, <literal>'1:10' DAY_SECOND</literal> is interpreted in
-          such a way that it is equivalent to <literal>'1:10'
-          MINUTE_SECOND</literal>. This is analogous to the way that
-          MySQL interprets <literal>TIME</literal> values as
-          representing elapsed time rather than as a time of day.
+          seconds. In other words, <literal>'1:10' DAY_SECOND</literal>
+          is interpreted in such a way that it is equivalent to
+          <literal>'1:10' MINUTE_SECOND</literal>. This is analogous to
+          the way that MySQL interprets <literal>TIME</literal> values
+          as representing elapsed time rather than as a time of day.
         </para>
 
         <para>
@@ -6602,7 +6615,7 @@
           a datetime value:
         </para>
 
-        <programlisting>
+<programlisting>
 mysql&gt; <userinput>SELECT DATE_ADD('1999-01-01', INTERVAL 1 DAY);</userinput>
         -&gt; '1999-01-02'
 mysql&gt; <userinput>SELECT DATE_ADD('1999-01-01', INTERVAL 1 HOUR);</userinput>
@@ -8768,8 +8781,8 @@
           the year that contains the first day of the week for the given
           date, you should use <literal>0</literal>,
           <literal>2</literal>, <literal>5</literal>, or
-          <literal>7</literal> as the optional <replaceable>mode</replaceable>
-          argument.
+          <literal>7</literal> as the optional
+          <replaceable>mode</replaceable> argument.
         </para>
 
 <programlisting>
@@ -8949,8 +8962,8 @@
     </indexterm>
 
     <para>
-      MySQL uses what is known as a <firstterm>proleptic
-      Gregorian calendar</firstterm>.
+      MySQL uses what is known as a <firstterm>proleptic Gregorian
+      calendar</firstterm>.
     </para>
 
     <para>
@@ -9270,8 +9283,8 @@
       The <literal>FULLTEXT</literal> parser determines where words
       start and end by looking for certain delimiters, for example
       <literal>' '</literal> (the space character), <literal>,</literal>
-      (the comma), and <literal>.</literal> (the period). If words
-      are not separated by delimiters (as in, for example, Chinese), the
+      (the comma), and <literal>.</literal> (the period). If words are
+      not separated by delimiters (as in, for example, Chinese), the
       <literal>FULLTEXT</literal> parser cannot determine where a word
       begins or ends. To be able to add words or other indexed terms in
       such languages to a <literal>FULLTEXT</literal> index, you must
@@ -9471,8 +9484,8 @@
 
           <para>
             A leading plus sign indicates that this word
-            <emphasis>must</emphasis> be present in each row
-            that is returned.
+            <emphasis>must</emphasis> be present in each row that is
+            returned.
           </para>
         </listitem>
 
@@ -9483,8 +9496,8 @@
 
           <para>
             A leading minus sign indicates that this word must
-            <emphasis>not</emphasis> be present in any of
-            the rows that are returned.
+            <emphasis>not</emphasis> be present in any of the rows that
+            are returned.
           </para>
         </listitem>
 
@@ -9549,9 +9562,8 @@
 
           <para>
             The asterisk serves as the truncation operator. Unlike the
-            other operators, it should be
-            <emphasis>appended</emphasis> to the word to be
-            affected.
+            other operators, it should be <emphasis>appended</emphasis>
+            to the word to be affected.
           </para>
         </listitem>
 
@@ -10742,8 +10754,9 @@
             variable. This variable also can be changed while the server
             is running, but you must have the <literal>SUPER</literal>
             privilege to do so. No rebuilding of indexes is necessary in
-            this case. See <xref linkend="server-system-variables"/>, which
-            describes the rules governing how to set this variable.
+            this case. See <xref linkend="server-system-variables"/>,
+            which describes the rules governing how to set this
+            variable.
           </para>
         </listitem>
 
@@ -11521,10 +11534,11 @@
           <para>
             These functions allow encryption and decryption of data
             using the official AES (Advanced Encryption Standard)
-            algorithm, previously known as <quote>Rijndael</quote>. Encoding with a
-            128-bit key length is used, but you can extend it up to 256
-            bits by modifying the source. We chose 128 bits because it
-            is much faster and it is secure enough for most purposes.
+            algorithm, previously known as <quote>Rijndael</quote>.
+            Encoding with a 128-bit key length is used, but you can
+            extend it up to 256 bits by modifying the source. We chose
+            128 bits because it is much faster and it is secure enough
+            for most purposes.
           </para>
 
           <para>
@@ -11678,8 +11692,8 @@
 
           <para>
             If the <replaceable>crypt_str</replaceable> argument does
-            not appear to be an encrypted string, MySQL returns the given
-            <replaceable>crypt_str</replaceable>.
+            not appear to be an encrypted string, MySQL returns the
+            given <replaceable>crypt_str</replaceable>.
           </para>
 
           <remark role="help-description-end"/>
@@ -11774,7 +11788,7 @@
             Each line in the DES key file has the following format:
           </para>
 
-<remark role="help-example" condition="DES_ENCRYPT"/>
+          <remark role="help-example" condition="DES_ENCRYPT"/>
 
 <programlisting>
 <replaceable>key_num</replaceable> <replaceable>des_key_str</replaceable>
@@ -12646,17 +12660,17 @@
 </programlisting>
 
           <para>
-            The ID that was generated is maintained in the server
-            on a <emphasis>per-connection basis</emphasis>. This means
-            that the value which the function returns to a given client
-            is the first <literal>AUTO_INCREMENT</literal> value
-            generated for most recent statement affecting an
+            The ID that was generated is maintained in the server on a
+            <emphasis>per-connection basis</emphasis>. This means that
+            the value which the function returns to a given client is
+            the first <literal>AUTO_INCREMENT</literal> value generated
+            for most recent statement affecting an
             <literal>AUTO_INCREMENT</literal> column by that client.
             This value cannot be affected by other clients, even if they
-            generate <literal>AUTO_INCREMENT</literal> values of
-            their own. This behavior ensures that you can retrieve your
-            own ID without concern for the activity of other clients,
-            and without the need for locks or transactions.
+            generate <literal>AUTO_INCREMENT</literal> values of their
+            own. This behavior ensures that you can retrieve your own ID
+            without concern for the activity of other clients, and
+            without the need for locks or transactions.
           </para>
 
           <para>
@@ -12670,10 +12684,10 @@
           <para>
             <emphasis role="bold">Important</emphasis>: If you insert
             mutliple rows using a single <literal>INSERT</literal>
-            statement, <literal>LAST_INSERT_ID()</literal> returns the 
+            statement, <literal>LAST_INSERT_ID()</literal> returns the
             value generated for the <emphasis>first</emphasis> inserted
             row <emphasis>only</emphasis>. The reason for this is to
-            make it possible to reproduce easily the same 
+            make it possible to reproduce easily the same
             <literal>INSERT</literal> statement against some other
             server.
           </para>
@@ -12734,7 +12748,7 @@
 +------------------+
 1 row in set (0.00 sec)
 </programlisting>
-          
+
           <para>
             Although the second query inserted 3 new rows into
             <literal>t</literal>, the ID generated for the first of
@@ -12746,7 +12760,8 @@
             If you use <literal>INSERT IGNORE</literal> and the record
             is ignored, the <literal>AUTO_INCREMENT</literal> counter is
             not incremented and <literal>LAST_INSERT_ID()</literal>
-            returns <literal>0</literal>, which reflects that no record was inserted.
+            returns <literal>0</literal>, which reflects that no record
+            was inserted.
           </para>
 
           <para>
@@ -13448,9 +13463,9 @@
             <replaceable>str</replaceable> that was obtained with
             <literal>GET_LOCK()</literal>. Returns <literal>1</literal>
             if the lock was released, <literal>0</literal> if the lock
-            was not established by this thread (in which case the lock is not
-            released), and <literal>NULL</literal> if the named lock
-            did not exist. The lock does not exist if it was never
+            was not established by this thread (in which case the lock
+            is not released), and <literal>NULL</literal> if the named
+            lock did not exist. The lock does not exist if it was never
             obtained by a call to <literal>GET_LOCK()</literal> or if it
             has previously been released.
           </para>
@@ -14075,8 +14090,8 @@
             <literal>ENUM</literal> and <literal>SET</literal> columns
             by their string value rather than by the string's relative
             position in the set. This differs from how <literal>ORDER
-            BY</literal> compares them. This is expected to be rectified in a
-            future MySQL release.
+            BY</literal> compares them. This is expected to be rectified
+            in a future MySQL release.
           </para>
         </listitem>
 

Modified: trunk/refman-5.0/stored-procedures.xml
===================================================================
--- trunk/refman-5.0/stored-procedures.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-5.0/stored-procedures.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -261,7 +261,7 @@
   | COMMENT '<replaceable>string</replaceable>'
 
 <replaceable>routine_body</replaceable>:
-    <replaceable>Valid SQL procedure statements or statements</replaceable>
+    <replaceable>Valid SQL procedure statement or statements</replaceable>
 </programlisting>
 
       <para>
@@ -319,6 +319,16 @@
       </para>
 
       <para>
+        The <replaceable>routine_body</replaceable> consists of valid
+        SQL procedure statements. Compound statement syntax can be used,
+        as described in <xref linkend="begin-end"/>. Compound statements
+        can contain declarations, loops, and other control structure
+        statements. The syntax for these statements is described later
+        in this chapter. See, for example, <xref linkend="declare"/> and
+        <xref linkend="flow-control-constructs"/>
+      </para>
+
+      <para>
         The <literal>CREATE FUNCTION</literal> statement was used in
         earlier versions of MySQL to support UDFs (User Defined
         Functions). See <xref linkend="adding-functions"/>. UDFs
@@ -1814,13 +1824,13 @@
 
     <remark role="todo">
       [js] This section needs to be rewritten once row-based replication
-      is implemented. 
+      is implemented.
     </remark>
 
     <para>
-      This section describes how MySQL &current-series; handles stored routines
-      (procedures and functions) with respect to binary logging. This
-      section also applies to triggers.
+      This section describes how MySQL &current-series; handles stored
+      routines (procedures and functions) with respect to binary
+      logging. This section also applies to triggers.
     </para>
 
     <para>
@@ -2184,8 +2194,8 @@
 
         <para>
           For this example, the <literal>CREATE PROCEDURE</literal> and
-          <literal>CALL</literal> statements appear in the binary
-          log, but the <literal>INSERT</literal> statement does not appear.
+          <literal>CALL</literal> statements appear in the binary log,
+          but the <literal>INSERT</literal> statement does not appear.
           This corrects the problem that occurred before MySQL 5.0.6 in
           which the <literal>CREATE PROCEDURE</literal> and
           <literal>CALL</literal> statements were not logged and the
@@ -2231,7 +2241,8 @@
       binary logging occurs at the SQL statement level. A future MySQL
       release is expected to implement row-level binary logging, which
       occurs at a more fine-grained level and specifies which changes to
-      make to individual records as a result of executing SQL statements.
+      make to individual records as a result of executing SQL
+      statements.
     </para>
 
   </section>

Modified: trunk/refman-5.1/functions.xml
===================================================================
--- trunk/refman-5.1/functions.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-5.1/functions.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -4060,6 +4060,13 @@
 </programlisting>
 
           <para>
+            The escape sequence should be empty or one character long.
+            As of MySQL 5.1.2, if the
+            <literal>NO_BACKSLASH_ESCAPES</literal> SQL mode is enabled,
+            the sequence cannot be empty.
+          </para>
+
+          <para>
             The following two statements illustrate that string
             comparisons are not case sensitive unless one of the
             operands is a binary string:

Modified: trunk/refman-5.1/stored-procedures.xml
===================================================================
--- trunk/refman-5.1/stored-procedures.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-5.1/stored-procedures.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -110,7 +110,7 @@
 
     <para>
       In MySQL &current-series;, the grant system takes stored routines
-      into account as follows: 
+      into account as follows:
     </para>
 
     <itemizedlist>
@@ -165,7 +165,7 @@
     <para>
       In MySQL &current-series;, a stored procedure or function is
       associated with a particular database. This has several
-      implications: 
+      implications:
     </para>
 
     <itemizedlist>
@@ -253,7 +253,7 @@
   | COMMENT '<replaceable>string</replaceable>'
 
 <replaceable>routine_body</replaceable>:
-    <replaceable>Valid SQL procedure statements or statements</replaceable>
+    <replaceable>Valid SQL procedure statement or statements</replaceable>
 </programlisting>
 
       <para>
@@ -311,6 +311,16 @@
       </para>
 
       <para>
+        The <replaceable>routine_body</replaceable> consists of valid
+        SQL procedure statements. Compound statement syntax can be used,
+        as described in <xref linkend="begin-end"/>. Compound statements
+        can contain declarations, loops, and other control structure
+        statements. The syntax for these statements is described later
+        in this chapter. See, for example, <xref linkend="declare"/> and
+        <xref linkend="flow-control-constructs"/>
+      </para>
+
+      <para>
         The <literal>CREATE FUNCTION</literal> statement was used in
         earlier versions of MySQL to support UDFs (User Defined
         Functions). See <xref linkend="adding-functions"/>. UDFs
@@ -579,7 +589,7 @@
         This statement is used to drop a stored procedure or function.
         That is, the specified routine is removed from the server. In
         MySQL &current-series;, you must have the <literal>ALTER
-          ROUTINE</literal> privilege for the routine. This privilege is
+        ROUTINE</literal> privilege for the routine. This privilege is
         granted automatically to the routine creator.
       </para>
 
@@ -1529,7 +1539,7 @@
   <section id="stored-procedure-replication-faq">
 
     <title id="title-stored-procedure-replication-faq">&title-stored-procedure-replication-faq;</title>
-    
+
     <remark role="todo">
       [js] This section needs to be rewritten - or possibly even cut
       altogether - once row-based replication is implemented.
@@ -1792,16 +1802,16 @@
   <section id="stored-procedure-logging">
 
     <title id="title-stored-procedure-logging">&title-stored-procedure-logging;</title>
-    
+
     <remark role="todo">
       [js] This section needs to be rewritten once row-based replication
-      is implemented. 
+      is implemented.
     </remark>
 
     <para>
-      This section describes how MySQL &current-series; handles stored routines
-      (procedures and functions) with respect to binary logging. This
-      section also applies to triggers.
+      This section describes how MySQL &current-series; handles stored
+      routines (procedures and functions) with respect to binary
+      logging. This section also applies to triggers.
     </para>
 
     <para>
@@ -2140,9 +2150,8 @@
 
         <para>
           For this example, the <literal>CREATE PROCEDURE</literal> and
-          <literal>CALL</literal> statements appear in the binary
-          log, but the <literal>INSERT</literal> statement does not
-          appear.
+          <literal>CALL</literal> statements appear in the binary log,
+          but the <literal>INSERT</literal> statement does not appear.
         </para>
       </listitem>
 
@@ -2184,7 +2193,8 @@
       binary logging occurs at the SQL statement level. A future MySQL
       release is expected to implement row-level binary logging, which
       occurs at a more fine-grained level and specifies which changes to
-      make to individual records as a result of executing SQL statements.
+      make to individual records as a result of executing SQL
+      statements.
     </para>
 
   </section>

Modified: trunk/refman-common/news-4.1.xml
===================================================================
--- trunk/refman-common/news-4.1.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-common/news-4.1.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -237,6 +237,15 @@
 
       <listitem>
         <para>
+          <literal>SELECT DISTINCT
+          CHAR(<replaceable>col_name</replaceable>)</literal> returned
+          incorrect results after <literal>SET NAMES utf8</literal>.
+          (Bug #13233)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
           Character set conversion was not being done for
           <literal>FIND_IN_SET()</literal>. (Bug #13751)
         </para>
@@ -467,6 +476,15 @@
 
       <listitem>
         <para>
+          A prepared statement failed with <literal>Illegal mix of
+          collations</literal> if the client character set was
+          <literal>utf8</literal> and the statement used a table that
+          had a character set of <literal>latin1</literal>. (Bug #12371)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
           If special characters such as <literal>'_'</literal> ,
           <literal>'%'</literal>, or the escape character were included
           within the prefix of a column index, <literal>LIKE</literal>

Modified: trunk/refman-common/news-5.0.xml
===================================================================
--- trunk/refman-common/news-5.0.xml	2005-10-23 02:39:48 UTC (rev 146)
+++ trunk/refman-common/news-5.0.xml	2005-10-23 02:40:02 UTC (rev 147)
@@ -199,6 +199,34 @@
 
       <listitem>
         <para>
+          For <literal>LIKE &hellip; ESCAPE</literal>, an escape
+          sequence longer than one character was accepted as valid. Now
+          the sequence must be empty or one character long. If the
+          <literal>NO_BACKSLASH_ESCAPES</literal> SQL mode is enabled,
+          the sequence must be one character long. (Bug #12595)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
+          <literal>SELECT DISTINCT
+          CHAR(<replaceable>col_name</replaceable>)</literal> returned
+          incorrect results after <literal>SET NAMES utf8</literal>.
+          (Bug #13233)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
+          A prepared statement failed with <literal>Illegal mix of
+          collations</literal> if the client character set was
+          <literal>utf8</literal> and the statement used a table that
+          had a character set of <literal>latin1</literal>. (Bug #12371)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
           Inserting a new row into an <literal>InnoDB</literal> table
           could cause <literal>DATETIME</literal> values already stored
           in the table to change. (Bug #13900)
@@ -490,6 +518,15 @@
 
       <listitem>
         <para>
+          <command>mysqldump --triggers</command> did not quote
+          identifiers properly if the <option>--compatible</option>
+          option was given, so the dump output could not be reloaded.
+          (Bug #13146)
+        </para>
+      </listitem>
+
+      <listitem>
+        <para>
           Character set conversion was not being done for
           <literal>FIND_IN_SET()</literal>. (Bug #13751)
         </para>

Thread
svn commit - mysqldoc@docsrva: r147 - in trunk: . refman-4.1 refman-5.0 refman-5.1 refman-commonpaul23 Oct