Author: paul
Date: 2009-05-22 22:02:30 +0200 (Fri, 22 May 2009)
New Revision: 15045
Log:
r41467@frost: paul | 2009-05-22 15:00:25 -0500
CREATE PROCEDURE/FUNCTION revisions preparatory to documenting 6.0.12
changes to default collation for routine parameters/variables/return value,
COLLATE support
Modified:
trunk/refman-5.0/sql-syntax-data-definition.xml
trunk/refman-5.1/sql-syntax-data-definition.xml
trunk/refman-5.4/sql-syntax-data-definition.xml
trunk/refman-6.0/sql-syntax-data-definition.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:41755
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:41466
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:38384
+ 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:41755
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:41467
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:38384
Modified: trunk/refman-5.0/sql-syntax-data-definition.xml
===================================================================
--- trunk/refman-5.0/sql-syntax-data-definition.xml 2009-05-22 20:02:20 UTC (rev 15044)
+++ trunk/refman-5.0/sql-syntax-data-definition.xml 2009-05-22 20:02:30 UTC (rev 15045)
Changed blocks: 8, Lines Added: 26, Lines Deleted: 32; 5208 bytes
@@ -1981,19 +1981,19 @@
<para>
If the routine name is the same as the name of a built-in SQL
- function, you must use a space between the name and the following
- parenthesis when defining the routine, or a syntax error occurs.
- This is also true when you invoke the routine later. For this
- reason, we suggest that it is better to avoid re-using the names
- of existing SQL functions for your own stored routines.
+ function, a syntax error occurs unless you use a space between the
+ name and the following parenthesis when defining the routine or
+ invoking it later. For this reason, we suggest that it is better
+ to avoid using the names of existing SQL functions for your own
+ stored routines.
</para>
<para>
The <literal role="sqlmode">IGNORE_SPACE</literal> SQL mode
applies to built-in functions, not to stored routines. It is
- always allowable to have spaces after a routine name, regardless
- of whether <literal role="sqlmode">IGNORE_SPACE</literal> is
- enabled.
+ always allowable to have spaces after a stored routine name,
+ regardless of whether
+ <literal role="sqlmode">IGNORE_SPACE</literal> is enabled.
</para>
<para>
@@ -2004,11 +2004,6 @@
</para>
<para>
- Each parameter can be declared to use any valid data type, except
- that the <literal>COLLATE</literal> attribute cannot be used.
- </para>
-
- <para>
Each parameter is an <literal>IN</literal> parameter by default.
To specify otherwise for a parameter, use the keyword
<literal>OUT</literal> or <literal>INOUT</literal> before the
@@ -2068,6 +2063,12 @@
</para>
<para>
+ Parameter types and function return types can be declared to use
+ any valid data type, except that the <literal>COLLATE</literal>
+ attribute cannot be used.
+ </para>
+
+ <para>
The <replaceable>routine_body</replaceable> consists of a valid
SQL procedure statement. This can be a simple statement such as
<literal role="stmt">SELECT</literal> or
@@ -2427,11 +2428,10 @@
</para>
<para>
- As of MySQL 5.0.18, the server uses the data type of a routine
- parameter or function return value as follows. These rules also
- apply to local routine variables created with the
- <literal role="stmt">DECLARE</literal> statement
- (<xref linkend="declare-local-variable"/>).
+ As of MySQL 5.0.18, the handles the data type of a routine
+ parameter, local routine variable created with
+ <literal role="stmt">DECLARE</literal>, or function return value
+ as follows:
</para>
<itemizedlist>
@@ -2440,7 +2440,7 @@
<para>
Assignments are checked for data type mismatches and overflow.
Conversion and overflow problems result in warnings, or errors
- in strict mode.
+ in strict SQL mode.
</para>
</listitem>
@@ -2455,12 +2455,12 @@
<listitem>
<para>
For character data types, if there is a <literal>CHARACTER
- SET</literal> clause in the declaration, the specified
+ SET</literal> attribute in the declaration, the specified
character set and its default collation are used. If there is
- no such clause, as of MySQL 5.0.25, the database character set
- and collation that are in effect at the time the server loads
- the routine into the routine cache are used. (These are given
- by the values of the
+ no such attribute, as of MySQL 5.0.25, the database character
+ set and collation that are in effect at the time the server
+ loads the routine into the routine cache are used. (These are
+ given by the values of the
<literal role="sysvar">character_set_database</literal> and
<literal role="sysvar">collation_database</literal> system
variables.) If the database character set or collation change
@@ -2472,13 +2472,6 @@
context <literal>BINARY</literal> specifies the binary
collation of the character set.)
</para>
-
- <para>
- In MySQL 5.1, the database character set and collation in
- effect at the time the routine is created are used. Subsequent
- changes to the database character set or collation do not
- affect routine execution.
- </para>
</listitem>
</itemizedlist>
@@ -5860,7 +5853,8 @@
5.0.10 or newer, you must drop all triggers <emphasis>before
upgrading</emphasis> and re-create them afterwards, or else
<literal role="stmt">DROP TRIGGER</literal> does not work after
- the upgrade. See <xref linkend="upgrading-from-previous-series"/>, for a
+ the upgrade. See
+ <xref linkend="upgrading-from-previous-series"/>, for a
suggested upgrade procedure.
</para>
</note>
Modified: trunk/refman-5.1/sql-syntax-data-definition.xml
===================================================================
--- trunk/refman-5.1/sql-syntax-data-definition.xml 2009-05-22 20:02:20 UTC (rev 15044)
+++ trunk/refman-5.1/sql-syntax-data-definition.xml 2009-05-22 20:02:30 UTC (rev 15045)
Changed blocks: 6, Lines Added: 25, Lines Deleted: 25; 4472 bytes
@@ -4408,19 +4408,19 @@
<para>
If the routine name is the same as the name of a built-in SQL
- function, you must use a space between the name and the following
- parenthesis when defining the routine, or a syntax error occurs.
- This is also true when you invoke the routine later. For this
- reason, we suggest that it is better to avoid re-using the names
- of existing SQL functions for your own stored routines.
+ function, a syntax error occurs unless you use a space between the
+ name and the following parenthesis when defining the routine or
+ invoking it later. For this reason, we suggest that it is better
+ to avoid using the names of existing SQL functions for your own
+ stored routines.
</para>
<para>
The <literal role="sqlmode">IGNORE_SPACE</literal> SQL mode
applies to built-in functions, not to stored routines. It is
- always allowable to have spaces after a routine name, regardless
- of whether <literal role="sqlmode">IGNORE_SPACE</literal> is
- enabled.
+ always allowable to have spaces after a stored routine name,
+ regardless of whether
+ <literal role="sqlmode">IGNORE_SPACE</literal> is enabled.
</para>
<para>
@@ -4431,11 +4431,6 @@
</para>
<para>
- Each parameter can be declared to use any valid data type, except
- that the <literal>COLLATE</literal> attribute cannot be used.
- </para>
-
- <para>
Each parameter is an <literal>IN</literal> parameter by default.
To specify otherwise for a parameter, use the keyword
<literal>OUT</literal> or <literal>INOUT</literal> before the
@@ -4495,6 +4490,12 @@
</para>
<para>
+ Parameter types and function return types can be declared to use
+ any valid data type, except that the <literal>COLLATE</literal>
+ attribute cannot be used.
+ </para>
+
+ <para>
The <replaceable>routine_body</replaceable> consists of a valid
SQL procedure statement. This can be a simple statement such as
<literal role="stmt">SELECT</literal> or
@@ -4840,10 +4841,10 @@
</para>
<para>
- The server uses the data type of a routine parameter or function
- return value as follows. These rules also apply to local routine
- variables created with the <literal role="stmt">DECLARE</literal>
- statement (<xref linkend="declare-local-variable"/>).
+ The server handles the data type of a routine parameter, local
+ routine variable created with
+ <literal role="stmt">DECLARE</literal>, or function return value
+ as follows:
</para>
<itemizedlist>
@@ -4852,7 +4853,7 @@
<para>
Assignments are checked for data type mismatches and overflow.
Conversion and overflow problems result in warnings, or errors
- in strict mode.
+ in strict SQL mode.
</para>
</listitem>
@@ -4867,14 +4868,13 @@
<listitem>
<para>
For character data types, if there is a <literal>CHARACTER
- SET</literal> clause in the declaration, the specified
+ SET</literal> attribute in the declaration, the specified
character set and its default collation are used. If there is
- no such clause, the database character set and collation that
- are in effect at the time the routine is created are used.
- (These are given by the values of the
- <literal role="sysvar">character_set_database</literal> and
- <literal role="sysvar">collation_database</literal> system
- variables.) The <literal>COLLATE</literal> attribute is not
+ no such attribute, the database character set in effect at
+ routine creation time and its default collation are used. (The
+ database character set is given by the value of the
+ <literal role="sysvar">character_set_database</literal> system
+ variable.) The <literal>COLLATE</literal> attribute is not
supported. (This includes use of <literal>BINARY</literal>,
because in this context <literal>BINARY</literal> specifies
the binary collation of the character set.)
Modified: trunk/refman-5.4/sql-syntax-data-definition.xml
===================================================================
--- trunk/refman-5.4/sql-syntax-data-definition.xml 2009-05-22 20:02:20 UTC (rev 15044)
+++ trunk/refman-5.4/sql-syntax-data-definition.xml 2009-05-22 20:02:30 UTC (rev 15045)
Changed blocks: 6, Lines Added: 25, Lines Deleted: 25; 4472 bytes
@@ -3905,19 +3905,19 @@
<para>
If the routine name is the same as the name of a built-in SQL
- function, you must use a space between the name and the following
- parenthesis when defining the routine, or a syntax error occurs.
- This is also true when you invoke the routine later. For this
- reason, we suggest that it is better to avoid re-using the names
- of existing SQL functions for your own stored routines.
+ function, a syntax error occurs unless you use a space between the
+ name and the following parenthesis when defining the routine or
+ invoking it later. For this reason, we suggest that it is better
+ to avoid using the names of existing SQL functions for your own
+ stored routines.
</para>
<para>
The <literal role="sqlmode">IGNORE_SPACE</literal> SQL mode
applies to built-in functions, not to stored routines. It is
- always allowable to have spaces after a routine name, regardless
- of whether <literal role="sqlmode">IGNORE_SPACE</literal> is
- enabled.
+ always allowable to have spaces after a stored routine name,
+ regardless of whether
+ <literal role="sqlmode">IGNORE_SPACE</literal> is enabled.
</para>
<para>
@@ -3928,11 +3928,6 @@
</para>
<para>
- Each parameter can be declared to use any valid data type, except
- that the <literal>COLLATE</literal> attribute cannot be used.
- </para>
-
- <para>
Each parameter is an <literal>IN</literal> parameter by default.
To specify otherwise for a parameter, use the keyword
<literal>OUT</literal> or <literal>INOUT</literal> before the
@@ -3992,6 +3987,12 @@
</para>
<para>
+ Parameter types and function return types can be declared to use
+ any valid data type, except that the <literal>COLLATE</literal>
+ attribute cannot be used.
+ </para>
+
+ <para>
The <replaceable>routine_body</replaceable> consists of a valid
SQL procedure statement. This can be a simple statement such as
<literal role="stmt">SELECT</literal> or
@@ -4334,10 +4335,10 @@
</para>
<para>
- The server uses the data type of a routine parameter or function
- return value as follows. These rules also apply to local routine
- variables created with the <literal role="stmt">DECLARE</literal>
- statement (<xref linkend="declare-local-variable"/>).
+ The server handles the data type of a routine parameter, local
+ routine variable created with
+ <literal role="stmt">DECLARE</literal>, or function return value
+ as follows:
</para>
<itemizedlist>
@@ -4346,7 +4347,7 @@
<para>
Assignments are checked for data type mismatches and overflow.
Conversion and overflow problems result in warnings, or errors
- in strict mode.
+ in strict SQL mode.
</para>
</listitem>
@@ -4361,14 +4362,13 @@
<listitem>
<para>
For character data types, if there is a <literal>CHARACTER
- SET</literal> clause in the declaration, the specified
+ SET</literal> attribute in the declaration, the specified
character set and its default collation are used. If there is
- no such clause, the database character set and collation that
- are in effect at the time the routine is created are used.
- (These are given by the values of the
- <literal role="sysvar">character_set_database</literal> and
- <literal role="sysvar">collation_database</literal> system
- variables.) The <literal>COLLATE</literal> attribute is not
+ no such attribute, the database character set in effect at
+ routine creation time and its default collation are used. (The
+ database character set is given by the value of the
+ <literal role="sysvar">character_set_database</literal> system
+ variable.) The <literal>COLLATE</literal> attribute is not
supported. (This includes use of <literal>BINARY</literal>,
because in this context <literal>BINARY</literal> specifies
the binary collation of the character set.)
Modified: trunk/refman-6.0/sql-syntax-data-definition.xml
===================================================================
--- trunk/refman-6.0/sql-syntax-data-definition.xml 2009-05-22 20:02:20 UTC (rev 15044)
+++ trunk/refman-6.0/sql-syntax-data-definition.xml 2009-05-22 20:02:30 UTC (rev 15045)
Changed blocks: 6, Lines Added: 25, Lines Deleted: 25; 4472 bytes
@@ -3359,19 +3359,19 @@
<para>
If the routine name is the same as the name of a built-in SQL
- function, you must use a space between the name and the following
- parenthesis when defining the routine, or a syntax error occurs.
- This is also true when you invoke the routine later. For this
- reason, we suggest that it is better to avoid re-using the names
- of existing SQL functions for your own stored routines.
+ function, a syntax error occurs unless you use a space between the
+ name and the following parenthesis when defining the routine or
+ invoking it later. For this reason, we suggest that it is better
+ to avoid using the names of existing SQL functions for your own
+ stored routines.
</para>
<para>
The <literal role="sqlmode">IGNORE_SPACE</literal> SQL mode
applies to built-in functions, not to stored routines. It is
- always allowable to have spaces after a routine name, regardless
- of whether <literal role="sqlmode">IGNORE_SPACE</literal> is
- enabled.
+ always allowable to have spaces after a stored routine name,
+ regardless of whether
+ <literal role="sqlmode">IGNORE_SPACE</literal> is enabled.
</para>
<para>
@@ -3382,11 +3382,6 @@
</para>
<para>
- Each parameter can be declared to use any valid data type, except
- that the <literal>COLLATE</literal> attribute cannot be used.
- </para>
-
- <para>
Each parameter is an <literal>IN</literal> parameter by default.
To specify otherwise for a parameter, use the keyword
<literal>OUT</literal> or <literal>INOUT</literal> before the
@@ -3446,6 +3441,12 @@
</para>
<para>
+ Parameter types and function return types can be declared to use
+ any valid data type, except that the <literal>COLLATE</literal>
+ attribute cannot be used.
+ </para>
+
+ <para>
The <replaceable>routine_body</replaceable> consists of a valid
SQL procedure statement. This can be a simple statement such as
<literal role="stmt">SELECT</literal> or
@@ -3790,10 +3791,10 @@
</para>
<para>
- The server uses the data type of a routine parameter or function
- return value as follows. These rules also apply to local routine
- variables created with the <literal role="stmt">DECLARE</literal>
- statement (<xref linkend="declare-local-variable"/>).
+ The server handles the data type of a routine parameter, local
+ routine variable created with
+ <literal role="stmt">DECLARE</literal>, or function return value
+ as follows:
</para>
<itemizedlist>
@@ -3802,7 +3803,7 @@
<para>
Assignments are checked for data type mismatches and overflow.
Conversion and overflow problems result in warnings, or errors
- in strict mode.
+ in strict SQL mode.
</para>
</listitem>
@@ -3817,14 +3818,13 @@
<listitem>
<para>
For character data types, if there is a <literal>CHARACTER
- SET</literal> clause in the declaration, the specified
+ SET</literal> attribute in the declaration, the specified
character set and its default collation are used. If there is
- no such clause, the database character set and collation that
- are in effect at the time the routine is created are used.
- (These are given by the values of the
- <literal role="sysvar">character_set_database</literal> and
- <literal role="sysvar">collation_database</literal> system
- variables.) The <literal>COLLATE</literal> attribute is not
+ no such attribute, the database character set in effect at
+ routine creation time and its default collation are used. (The
+ database character set is given by the value of the
+ <literal role="sysvar">character_set_database</literal> system
+ variable.) The <literal>COLLATE</literal> attribute is not
supported. (This includes use of <literal>BINARY</literal>,
because in this context <literal>BINARY</literal> specifies
the binary collation of the character set.)
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r15045 - in trunk: . refman-5.0 refman-5.1 refman-5.4 refman-6.0 | paul.dubois | 23 May |