Author: paul
Date: 2007-12-09 05:05:59 +0100 (Sun, 09 Dec 2007)
New Revision: 9216
Log:
r34071@arctic: paul | 2007-12-08 22:04:30 -0600
Sync translations.
Modified:
trunk/it/refman-5.1/restrictions.xml
trunk/it/refman-5.1/se-archive.xml
trunk/it/refman-5.1/se-csv.xml
trunk/it/refman-5.1/se-example.xml
trunk/it/refman-5.1/se-federated.xml
trunk/it/refman-5.1/se-memory.xml
trunk/it/refman-5.1/se-merge.xml
trunk/it/refman-5.1/sql-syntax.xml
trunk/it/refman-5.1/stored-procedures.xml
trunk/pt/refman-5.1/restrictions.xml
trunk/pt/refman-5.1/se-archive.xml
trunk/pt/refman-5.1/se-csv.xml
trunk/pt/refman-5.1/se-example.xml
trunk/pt/refman-5.1/se-federated.xml
trunk/pt/refman-5.1/se-memory.xml
trunk/pt/refman-5.1/se-merge.xml
trunk/pt/refman-5.1/sql-syntax.xml
trunk/pt/refman-5.1/stored-procedures.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:34070
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:27855
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:22582
+ 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:34071
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:27855
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:22582
Modified: trunk/it/refman-5.1/restrictions.xml
===================================================================
--- trunk/it/refman-5.1/restrictions.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/restrictions.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 5, Lines Added: 17, Lines Deleted: 11; 2861 bytes
@@ -205,8 +205,8 @@
</itemizedlist>
<para>
- The behavior that table columns do not take precedence over
- variables is non-standard.
+ The behavior that variables take precedence over table columns is
+ non-standard.
</para>
<para>
@@ -220,7 +220,11 @@
<literal>PARAMETERS</literal> table until MySQL 6.0, so
applications that need to acquire routine parameter information at
runtime must use workarounds such as parsing the output of
- <literal>SHOW CREATE</literal> statements.
+ <literal>SHOW CREATE</literal> statements or the
+ <literal>param_list</literal> column of the
+ <literal>mysql.proc</literal> table. <literal>param_list</literal>
+ contents can be processed from within a stored routine, unlike the
+ output from <literal>SHOW</literal>.
</para>
<para>
@@ -460,9 +464,9 @@
<listitem>
<para>
Subquery optimization for <literal>IN</literal> is not as
- effective as for the <literal>=</literal> operator or for
- <literal>IN(<replaceable>value_list</replaceable>)</literal>
- constructs.
+ effective as for the <literal>=</literal> operator or for the
+ <function role="sql">IN(<replaceable>value_list</replaceable>)</function>
+ operator.
</para>
<para>
@@ -504,8 +508,8 @@
<para>
An implication is that an <literal>IN</literal> subquery can
be much slower than a query written using an
- <literal>IN(<replaceable>value_list</replaceable>)</literal>
- construct that lists the same values that the subquery would
+ <function role="sql">IN(<replaceable>value_list</replaceable>)</function>
+ operator that lists the same values that the subquery would
return.
</para>
</listitem>
@@ -594,9 +598,11 @@
The reason for supporting row comparisons for
<literal>IN</literal> but not for the others is that
<literal>IN</literal> is implemented by rewriting it as a
- sequence of <literal>=</literal> comparisons and
- <literal>AND</literal> operations. This approach cannot be
- used for <literal>ALL</literal>, <literal>ANY</literal>, or
+ sequence of
+ <function role="sqlop" condition="operator_equal">=</function>
+ comparisons and <function role="sqlop">AND</function>
+ operations. This approach cannot be used for
+ <literal>ALL</literal>, <literal>ANY</literal>, or
<literal>SOME</literal>.
</para>
</listitem>
Modified: trunk/it/refman-5.1/se-archive.xml
===================================================================
--- trunk/it/refman-5.1/se-archive.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-archive.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 3, Lines Added: 7, Lines Deleted: 9; 1882 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="archive-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>ARCHIVE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>ARCHIVE</literal> storage engine</primary>
+ <primary>ARCHIVE storage engine</primary>
</indexterm>
<indexterm>
@@ -71,10 +69,10 @@
<para>
As of MySQL 5.1.6, the <literal>ARCHIVE</literal> engine supports
the <literal>AUTO_INCREMENT</literal> column attribute. The
- <literal>AUTO_INCREMENT</literal> columns can have either a unique
- or non-unique index. Attempting to create an index on any other
- column results in an error. The <literal>ARCHIVE</literal> engine
- also supports the <literal>AUTO_INCREMENT</literal> table option in
+ <literal>AUTO_INCREMENT</literal> column can have either a unique or
+ non-unique index. Attempting to create an index on any other column
+ results in an error. The <literal>ARCHIVE</literal> engine also
+ supports the <literal>AUTO_INCREMENT</literal> table option in
<literal>CREATE TABLE</literal> and <literal>ALTER TABLE</literal>
statements to specify the initial sequence value for a new table or
reset the sequence value for an existing table, respectively.
Modified: trunk/it/refman-5.1/se-csv.xml
===================================================================
--- trunk/it/refman-5.1/se-csv.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-csv.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 3, Lines Deleted: 5; 922 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="csv-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>CSV</literal> Storage Engine</title>
<indexterm>
- <primary><literal>CSV</literal> storage engine</primary>
+ <primary>CSV storage engine</primary>
</indexterm>
<indexterm>
Modified: trunk/it/refman-5.1/se-example.xml
===================================================================
--- trunk/it/refman-5.1/se-example.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-example.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 3, Lines Deleted: 5; 950 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="example-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>EXAMPLE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>EXAMPLE</literal> storage engine</primary>
+ <primary>EXAMPLE storage engine</primary>
</indexterm>
<indexterm>
Modified: trunk/it/refman-5.1/se-federated.xml
===================================================================
--- trunk/it/refman-5.1/se-federated.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-federated.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 17, Lines Added: 59, Lines Deleted: 56; 12270 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="federated-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>FEDERATED</literal> Storage Engine</title>
<indexterm>
- <primary><literal>FEDERATED</literal> storage engine</primary>
+ <primary>FEDERATED storage engine</primary>
</indexterm>
<indexterm>
@@ -35,8 +33,8 @@
<para>
To examine the source for the <literal>FEDERATED</literal> engine,
- look in the <filename>sql</filename> directory of a MySQL source
- distribution.
+ look in the <filename>storage/federated</filename> directory of a
+ MySQL source distribution.
</para>
<formalpara role="mnmas-kb">
@@ -62,9 +60,9 @@
<para>
When you create a table using one of the standard storage engines
(such as <literal>MyISAM</literal>, <literal>CSV</literal> or
- <literal>InnoDB</literal>, the table consists of the table
+ <literal>InnoDB</literal>), the table consists of the table
definition and the associated data. When you create a
- <literal>FEDERATED</literal> table the table definition is the
+ <literal>FEDERATED</literal> table, the table definition is the
same, but the physical storage of the data is handled on a remote
server.
</para>
@@ -110,7 +108,7 @@
</para>
<para>
- The basic structure of a <literal>FEDERATED</literal> table set up
+ The basic structure of a <literal>FEDERATED</literal> table setup
is shown in <xref linkend="figure-se-federated-structure"/>.
</para>
@@ -175,10 +173,11 @@
<para>
The local server communicates with the remote server using MySQL
client C API functions. It invokes
- <literal>mysql_real_query()</literal> to send the statement. To
- read a result set, it uses <literal>mysql_store_result()</literal>
- and fetches rows one at a time using
- <literal>mysql_fetch_row()</literal>.
+ <function role="capi">mysql_real_query()</function> to send the
+ statement. To read a result set, it uses
+ <function role="capi">mysql_store_result()</function> and fetches
+ rows one at a time using
+ <function role="capi">mysql_fetch_row()</function>.
</para>
</section>
@@ -242,7 +241,7 @@
<note>
<para>
- When you create the local table is <emphasis>must</emphasis>
+ When you create the local table it <emphasis>must</emphasis>
have an identical definition to the remote table.
</para>
</note>
@@ -308,56 +307,57 @@
<listitem>
<para>
- <literal>scheme</literal> — is a recognized connection
- protocol. Only <literal>mysql</literal> is supported as the
- <replaceable>scheme</replaceable> value at this point.
+ <replaceable>scheme</replaceable> — is a recognized
+ connection protocol. Only <literal>mysql</literal> is
+ supported as the <replaceable>scheme</replaceable> value at
+ this point.
</para>
</listitem>
<listitem>
<para>
- <literal>user_name</literal> — the user name for the
- connection. This user must have been created on the remote
- server, and must have suitable privileges to perform the
- required actions (<literal>SELECT</literal>,
- <literal>INSERT</literal>, <literal>UPDATE</literal> etc.)
- on the remote table.
+ <replaceable>user_name</replaceable> — the username
+ for the connection. This user must have been created on the
+ remote server, and must have suitable privileges to perform
+ the required actions (<literal>SELECT</literal>,
+ <literal>INSERT</literal>, <literal>UPDATE</literal>, and so
+ forth) on the remote table.
</para>
</listitem>
<listitem>
<para>
- <literal>password</literal> — (optional) the
+ <replaceable>password</replaceable> — (optional) the
corresponding password for <literal>username</literal>.
</para>
</listitem>
<listitem>
<para>
- <literal>host_name</literal> — the hostname or IP
- address of the remote server.
+ <replaceable>host_name</replaceable> — the hostname or
+ IP address of the remote server.
</para>
</listitem>
<listitem>
<para>
- <literal>port_num</literal> — (optional) the port
- number for the remote server. The default is 3306.
+ <replaceable>port_num</replaceable> — (optional) the
+ port number for the remote server. The default is 3306.
</para>
</listitem>
<listitem>
<para>
- <literal>db_name</literal> — the name of the database
- holding the remote table.
+ <replaceable>db_name</replaceable> — the name of the
+ database holding the remote table.
</para>
</listitem>
<listitem>
<para>
- <literal>table_name</literal> — the name of the remote
- table. The name of the local and the remote table do not
- have to match.
+ <replaceable>tbl_name</replaceable> — the name of the
+ remote table. The name of the local and the remote table do
+ not have to match.
</para>
</listitem>
@@ -383,10 +383,10 @@
<para>
If you are creating a number of <literal>FEDERATED</literal>
tables on the same server, or if you want to simplify the
- process of creating <literal>FEDERATED</literal> tables, then
- you can use the <literal>CREATE SERVER</literal> statement to
- define the server connection parameters, just as you would with
- the <literal>CONNECTION</literal> string.
+ process of creating <literal>FEDERATED</literal> tables, you can
+ use the <literal>CREATE SERVER</literal> statement to define the
+ server connection parameters, just as you would with the
+ <literal>CONNECTION</literal> string.
</para>
<para>
@@ -399,8 +399,9 @@
OPTIONS (option ...)</programlisting>
<para>
- The <literal>server_name</literal> is used as the connection
- string when creating a new <literal>FEDERATED</literal> table.
+ The <replaceable>server_name</replaceable> is used as the
+ connection string when creating a new
+ <literal>FEDERATED</literal> table.
</para>
<para>
@@ -447,8 +448,7 @@
<para>
For more information on <literal>CREATE SERVER</literal>, see
- <xref
- linkend="create-server"/>.
+ <xref linkend="create-server"/>.
</para>
<para>
@@ -456,14 +456,16 @@
arguments as the <literal>CONNECTION</literal> string. The
<literal>CREATE SERVER</literal> statement updates the rows in
the <literal>mysql.servers</literal> table. See the table for
- information on the paramters when using the connection string,
+ information on the parameters when using the connection string,
options in the <literal>CREATE SERVER</literal> statement, and
the columns in the <literal>mysql.servers</literal> table. For
reference, the format of the <literal>CONNECTION</literal>
string is as follows:
</para>
-<programlisting>scheme://user_name[:password]@host_name[:port_num]/db_name/tbl_name</programlisting>
+<programlisting>
+<replaceable>scheme</replaceable>://<replaceable>user_name</replaceable>[:<replaceable>password</replaceable>]@<replaceable>host_name</replaceable>[:<replaceable>port_num</replaceable>]/<replaceable>db_name</replaceable>/<replaceable>tbl_name</replaceable>
+</programlisting>
<informaltable>
<tgroup cols="4">
@@ -482,37 +484,37 @@
<tbody>
<row>
<entry>Connection scheme</entry>
- <entry><literal>scheme</literal></entry>
+ <entry><replaceable>scheme</replaceable></entry>
<entry><literal>wrapper_name</literal></entry>
<entry><literal>Wrapper</literal></entry>
</row>
<row>
<entry>Remote user</entry>
- <entry><literal>user_name</literal></entry>
+ <entry><replaceable>user_name</replaceable></entry>
<entry><literal>USER</literal></entry>
<entry><literal>Username</literal></entry>
</row>
<row>
<entry>Remote password</entry>
- <entry><literal>password</literal></entry>
+ <entry><replaceable>password</replaceable></entry>
<entry><literal>PASSWORD</literal></entry>
<entry><literal>Password</literal></entry>
</row>
<row>
<entry>Remote host</entry>
- <entry><literal>host_name</literal></entry>
+ <entry><replaceable>host_name</replaceable></entry>
<entry><literal>HOST</literal></entry>
<entry><literal>Host</literal></entry>
</row>
<row>
<entry>Remote port</entry>
- <entry><literal>port_num</literal></entry>
+ <entry><replaceable>port_num</replaceable></entry>
<entry><literal>PORT</literal></entry>
<entry><literal>Port</literal></entry>
</row>
<row>
<entry>Remote database</entry>
- <entry><literal>db_name</literal></entry>
+ <entry><replaceable>db_name</replaceable></entry>
<entry><literal>DATABASE</literal></entry>
<entry><literal>Db</literal></entry>
</row>
@@ -540,7 +542,7 @@
<literal>FEDERATED</literal> tables may be replicated to other
slaves, but you must ensure that the slave servers are able to
use the user/password combination that is defined in the
- <literal>CONNECTION</literal> (or the row in the
+ <literal>CONNECTION</literal> string (or the row in the
<literal>mysql.servers</literal> table) to connect to the
remote server.
</para>
@@ -616,7 +618,7 @@
<listitem>
<para>
- Internally, implementation uses <literal>SELECT</literal>,
+ Internally, the implementation uses <literal>SELECT</literal>,
<literal>INSERT</literal>, <literal>UPDATE</literal>, and
<literal>DELETE</literal>, but not <literal>HANDLER</literal>.
</para>
@@ -629,8 +631,9 @@
<literal>UPDATE</literal>, <literal>DELETE</literal>,
<literal>TRUNCATE</literal>, and indexes. It does not support
<literal>ALTER TABLE</literal>, or any Data Definition
- Language statements other than <literal>DROP TABLE</literal>.
- The current implementation does not use prepared statements.
+ Language statements that directly affect the structure of the
+ table, other than <literal>DROP TABLE</literal>. The current
+ implementation does not use prepared statements.
<remark>
It remains to be seen whether the limited subset of the
@@ -739,8 +742,8 @@
<listitem>
<para>
Any <literal>DROP TABLE</literal> statement issued against a
- <literal>FEDERATED</literal> table will drop only the local
- table, not the remote table.
+ <literal>FEDERATED</literal> table drops only the local table,
+ not the remote table.
</para>
</listitem>
Modified: trunk/it/refman-5.1/se-memory.xml
===================================================================
--- trunk/it/refman-5.1/se-memory.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-memory.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 6, Lines Deleted: 8; 1316 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="memory-storage-engine">
@@ -15,21 +13,21 @@
</remark>
<indexterm>
- <primary><literal>HEAP</literal> storage engine</primary>
+ <primary>HEAP storage engine</primary>
</indexterm>
<indexterm>
- <primary><literal>MEMORY</literal> storage engine</primary>
+ <primary>MEMORY storage engine</primary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>MEMORY</literal></secondary>
+ <secondary>MEMORY</secondary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>HEAP</literal></secondary>
+ <secondary>HEAP</secondary>
</indexterm>
<para>
Modified: trunk/it/refman-5.1/se-merge.xml
===================================================================
--- trunk/it/refman-5.1/se-merge.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/se-merge.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 3, Lines Added: 53, Lines Deleted: 13; 3153 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="merge-storage-engine">
@@ -10,12 +8,12 @@
<title>The <literal>MERGE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>MERGE</literal> storage engine</primary>
+ <primary>MERGE storage engine</primary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>MERGE</literal></secondary>
+ <secondary>MERGE</secondary>
</indexterm>
<indexterm>
@@ -697,15 +695,57 @@
</para>
</listitem>
+ <listitem>
+ <para>
+ Using different underlying row formats in
+ <literal>MyISAM</literal> tables with a parent
+ <literal>MERGE</literal> table is currently known to fail. See
+ Bug #32364
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot
+ be opened or used because of a problem with an underlying
+ table, <literal>CHECK TABLE</literal> displays information
+ about which table caused the problem.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot change the union list
+ of a non-temporary <literal>MERGE</literal> table when LOCK
+ TABLES is in effect. The following does
+ <emphasis>not</emphasis> work:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ...;
+ LOCK TABLES t1 WRITE, t2 WRITE, m1 WRITE;
+ ALTER TABLE m1 ... UNION=(t1,t2) ...;</programlisting>
+
+ However, you can do this with a temporary
+ <literal>MERGE</literal> table.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot create a
+ <literal>MERGE</literal> table with <literal>CREATE ...
+ SELECT</literal>, neither as a temporary
+ <literal>MERGE</literal> table, nor as a non-temporary
+ <literal>MERGE</literal> table. For example:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ... SELECT ...;</programlisting>
+
+ Gives error message: table is not <literal>BASE
+ TABLE</literal>.
+ </para>
+ </listitem>
+
</itemizedlist>
- <para>
- As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot be
- opened or used because of a problem with an underlying table,
- <literal>CHECK TABLE</literal> displays information about which
- table caused the problem.
- </para>
-
</section>
</section>
Modified: trunk/it/refman-5.1/sql-syntax.xml
===================================================================
--- trunk/it/refman-5.1/sql-syntax.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/sql-syntax.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 27, Lines Added: 133, Lines Deleted: 80; 18259 bytes
@@ -1451,23 +1451,6 @@
will not apply to them.
</para>
- <para>
- To change only the <emphasis>default</emphasis> character
- set for a table, use this statement:
- </para>
-
-<programlisting>
-ALTER TABLE <replaceable>tbl_name</replaceable> DEFAULT CHARACTER SET <replaceable>charset_name</replaceable>;
-</programlisting>
-
- <para>
- The word <literal>DEFAULT</literal> is optional. The default
- character set is the character set that is used if you do
- not specify the character set for columns that you add to a
- table later (for example, with <literal>ALTER TABLE ... ADD
- column</literal>).
- </para>
-
<warning>
<para>
The <literal>CONVERT TO</literal> operation converts
@@ -1490,6 +1473,23 @@
you convert to or from <literal>BLOB</literal> columns.
</para>
</warning>
+
+ <para>
+ To change only the <emphasis>default</emphasis> character
+ set for a table, use this statement:
+ </para>
+
+<programlisting>
+ALTER TABLE <replaceable>tbl_name</replaceable> DEFAULT CHARACTER SET <replaceable>charset_name</replaceable>;
+</programlisting>
+
+ <para>
+ The word <literal>DEFAULT</literal> is optional. The default
+ character set is the character set that is used if you do
+ not specify the character set for columns that you add to a
+ table later (for example, with <literal>ALTER TABLE ... ADD
+ column</literal>).
+ </para>
</listitem>
<listitem>
@@ -2781,7 +2781,7 @@
<para>
For each <literal><replaceable>option</replaceable></literal>
you must specify either a character literal or numeric literal.
- Character literals are UTF8, support a maximum length of 64
+ Character literals are UTF-8, support a maximum length of 64
characters and default to a blank (empty) string. String
literals are silently truncated to 64 characters. Numeric
literals must be a number between 0 and 9999, default value is
@@ -3143,7 +3143,7 @@
</para>
<para>
- <replaceable>data_type</replaceable> represents the data type is
+ <replaceable>data_type</replaceable> represents the data type in
a column definition. <replaceable>spatial_type</replaceable>
represents a spatial data type. The data type syntax shown is
representative only. For a full description of the syntax
@@ -3327,7 +3327,7 @@
must be a constant; it cannot be a function or an
expression. This means, for example, that you cannot set the
default for a date column to be the value of a function such
- as <literal>NOW()</literal> or
+ as <function role="sql">NOW()</function> or
<literal>CURRENT_DATE</literal>. The exception is that you
can specify <literal>CURRENT_TIMESTAMP</literal> as the
default for a <literal>TIMESTAMP</literal> column. See
@@ -4055,6 +4055,14 @@
relative path.
</para>
+ <important>
+ <para>
+ Beginning with MySQL 5.1.23, table-level <literal>DATA
+ DIRECTORY</literal> and <literal>INDEX DIRECTORY</literal>
+ are ignored for partitioned tables. (Bug #32091)
+ </para>
+ </important>
+
<para>
These options work only when you are not using the
<option>--skip-symbolic-links</option> option. Your
@@ -4391,9 +4399,10 @@
The <literal>LINEAR</literal> keyword entails a somewhat
different algorithm. In this case, the number of the
partition in which a row is stored is calculated as the
- result of one or more logical <literal>AND</literal>
- operations. For discussion and examples of linear hashing,
- see <xref linkend="partitioning-linear-hash"/>.
+ result of one or more logical
+ <function role="sqlop">AND</function> operations. For
+ discussion and examples of linear hashing, see
+ <xref linkend="partitioning-linear-hash"/>.
</para>
</listitem>
@@ -4419,7 +4428,8 @@
linear partitioning by using the <literal>LINEAR</literal>
keyword. This has the same effect as with tables that are
partitioned by <literal>HASH</literal>. That is, the
- partition number is found using the <literal>&</literal>
+ partition number is found using the
+ <function role="sqlop" condition="operator_bitwise-and">&</function>
operator rather than the modulus (see
<xref linkend="partitioning-linear-hash"/>, and
<xref linkend="partitioning-key"/>, for details). This
@@ -4769,11 +4779,9 @@
</para>
<para>
- On Windows, paths used for <literal>DATA DIRECTORY</literal>
- and <literal>INDEX DIRECTORY</literal> must use the
- <literal>/</literal> (slash) character and not the
- <literal>\</literal> (backslash) character. See
- <xref linkend="partitioning-overview"/>, for an example.
+ On Windows, the <literal>DATA DIRECTORY</literal> and
+ <literal>INDEX DIRECTORY</literal> options are not supported
+ for individual partitions or subpartitions (Bug #30459).
</para>
<note>
@@ -5821,12 +5829,18 @@
implemented in 5.1 for mapping database names to database
directory names (see <xref linkend="identifier-mapping"/>).
However, use of this statement could result in loss of database
- contents. Do not use <literal>RENAME DATABASE</literal>. Use
- <literal>ALTER DATABASE <replaceable>db_name</replaceable>
- UPGRADE DATA DIRECTORY NAME</literal> instead (see
- <xref linkend="alter-database"/>).
+ contents, which is why it was removed. Do not use
+ <literal>RENAME DATABASE</literal> in earlier versions in which
+ it is present.
</para>
+ <para>
+ To perform the task of upgrading database names with the new
+ encoding, use <literal>ALTER DATABASE
+ <replaceable>db_name</replaceable> UPGRADE DATA DIRECTORY
+ NAME</literal> instead (see <xref linkend="alter-database"/>).
+ </para>
+
</section>
<section id="rename-table">
@@ -5996,8 +6010,10 @@
<para>
For the single-table syntax, the <literal>DELETE</literal>
- statement deletes rows from <replaceable>tbl_name</replaceable>
- and returns the number of rows deleted. The
+ statement deletes rows from <replaceable>tbl_name</replaceable>.
+ The number of rows deleted is returned by the
+ <function role="sql">ROW_COUNT()</function> function (see
+ <xref linkend="information-functions"/>). The
<literal>WHERE</literal> clause, if given, specifies the
conditions that identify which rows to delete. With no
<literal>WHERE</literal> clause, all rows are deleted. If the
@@ -6949,11 +6965,33 @@
<xref linkend="insert-delayed"/>.
</para>
+ <indexterm>
+ <primary>DELAYED</primary>
+ <secondary>when ignored</secondary>
+ </indexterm>
+
<para>
<literal>DELAYED</literal> is ignored with <literal>INSERT
... SELECT</literal> or <literal>INSERT ... ON DUPLICATE KEY
UPDATE</literal>.
</para>
+
+ <indexterm>
+ <primary>stored functions</primary>
+ <secondary>and INSERT DELAYED</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>triggers</primary>
+ <secondary>and INSERT DELAYED</secondary>
+ </indexterm>
+
+ <para>
+ Beginning with MySQL 5.1.19, <literal>DELAYED</literal> is
+ also disregarded for an <literal>INSERT</literal> that uses
+ functions accessing tables or triggers, or that is called
+ from a function or a trigger.
+ </para>
</listitem>
<listitem>
@@ -7557,19 +7595,20 @@
<para>
You can use the
- <literal>VALUES(<replaceable>col_name</replaceable>)</literal>
+ <function role="sql">VALUES(<replaceable>col_name</replaceable>)</function>
function in the <literal>UPDATE</literal> clause to refer to
column values from the <literal>INSERT</literal> portion of
the <literal>INSERT ... UPDATE</literal> statement. In other
words,
- <literal>VALUES(<replaceable>col_name</replaceable>)</literal>
+ <function role="sql">VALUES(<replaceable>col_name</replaceable>)</function>
in the <literal>UPDATE</literal> clause refers to the value of
<replaceable>col_name</replaceable> that would be inserted,
had no duplicate-key conflict occurred. This function is
especially useful in multiple-row inserts. The
- <literal>VALUES()</literal> function is meaningful only in
- <literal>INSERT ... UPDATE</literal> statements and returns
- <literal>NULL</literal> otherwise. Example:
+ <function role="sql">VALUES()</function> function is
+ meaningful only in <literal>INSERT ... UPDATE</literal>
+ statements and returns <literal>NULL</literal> otherwise.
+ Example:
</para>
<programlisting>
@@ -10766,8 +10805,8 @@
<para>
With an inner join,
- <literal>COALESCE(a.c1,b.c1)</literal> is the same as
- either <literal>a.c1</literal> or
+ <function role="sql">COALESCE(a.c1,b.c1)</function> is
+ the same as either <literal>a.c1</literal> or
<literal>b.c1</literal> because both columns will have
the same value. With an outer join (such as
<literal>LEFT JOIN</literal>), one of the two columns
@@ -12690,9 +12729,10 @@
<para>
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. See <xref linkend="information-functions"/>.
+ Using MySQL facilities like the
+ <function role="sql">BENCHMARK()</function> function, you can
+ get an idea about what helps in your own situation. See
+ <xref linkend="information-functions"/>.
</para>
<para>
@@ -12736,9 +12776,9 @@
<listitem>
<para>
MySQL enhances expressions of the following form with an
- expression involving <literal>MIN()</literal> or
- <literal>MAX()</literal>, unless <literal>NULL</literal>
- values or empty sets are involved:
+ expression involving <function role="sql">MIN()</function>
+ or <function role="sql">MAX()</function>, unless
+ <literal>NULL</literal> values or empty sets are involved:
</para>
<programlisting>
@@ -12818,7 +12858,7 @@
</programlisting>
<para>
- Can be rewritten using <literal>IN()</literal>:
+ Can be rewritten as:
</para>
<programlisting>
@@ -12877,8 +12917,8 @@
<listitem><para>
The third option is to use interactive SQL to construct a set of
<literal>DELETE</literal> statements automatically, using the
- MySQL extension <literal>CONCAT()</literal> (in lieu of the
- standard <literal>||</literal> operator). For example:
+ MySQL extension <function role="sql">CONCAT()</function> (in lieu of the
+ standard <function role="sqlop" condition="operator_or">||</function> operator). For example:
</para>
<programlisting>
@@ -13480,9 +13520,9 @@
<listitem>
<para>
For help on a specific help topic, such as the
- <literal>ASCII()</literal> function or the <literal>CREATE
- TABLE</literal> statement, use the associated keyword or
- keywords:
+ <function role="sql">ASCII()</function> function or the
+ <literal>CREATE TABLE</literal> statement, use the
+ associated keyword or keywords:
</para>
<programlisting>
@@ -13706,9 +13746,9 @@
<para>
Before MySQL 5.1.17, if you intend to use the
- <literal>HELP()</literal> statement while other tables are
- locked with <literal>LOCK TABLES</literal>, you must also lock
- the required
+ <literal>HELP</literal> statement while other tables are locked
+ with <literal>LOCK TABLES</literal>, you must also lock the
+ required
<literal>mysql.help_<replaceable>xxx</replaceable></literal>
tables. See <xref linkend="lock-tables"/>.
</para>
@@ -15591,8 +15631,8 @@
statement. In particular, to specify the password in plain
text, omit the <literal>PASSWORD</literal> keyword. To specify
the password as the hashed value as returned by the
- <literal>PASSWORD()</literal> function, include the
- <literal>PASSWORD</literal> keyword. See
+ <function role="sql">PASSWORD()</function> function, include
+ the <literal>PASSWORD</literal> keyword. See
<xref linkend="grant"/>.
</para>
@@ -16352,12 +16392,12 @@
<para>
The privileges for a table, column, or routine are formed
- additively as the logical <literal>OR</literal> of the
- privileges at each of the privilege levels. For example, if
- the <literal>mysql.user</literal> table specifies that a user
- has a global <literal>SELECT</literal> privilege, the
- privilege cannot be denied by an entry at the database, table,
- or column level.
+ additively as the logical <function role="sqlop">OR</function>
+ of the privileges at each of the privilege levels. For
+ example, if the <literal>mysql.user</literal> table specifies
+ that a user has a global <literal>SELECT</literal> privilege,
+ the privilege cannot be denied by an entry at the database,
+ table, or column level.
</para>
<para>
@@ -16437,9 +16477,10 @@
<para>
In the <literal>IDENTIFIED BY</literal> clause, the password
should be given as the literal password value. It is
- unnecessary to use the <literal>PASSWORD()</literal> function
- as it is for the <literal>SET PASSWORD</literal> statement.
- For example:
+ unnecessary to use the
+ <function role="sql">PASSWORD()</function> function as it is
+ for the <literal>SET PASSWORD</literal> statement. For
+ example:
</para>
<programlisting>
@@ -16448,9 +16489,10 @@
<para>
If you do not want to send the password in clear text and you
- know the hashed value that <literal>PASSWORD()</literal> would
- return for the password, you can specify the hashed value
- preceded by the keyword <literal>PASSWORD</literal>:
+ know the hashed value that
+ <function role="sql">PASSWORD()</function> would return for
+ the password, you can specify the hashed value preceded by the
+ keyword <literal>PASSWORD</literal>:
</para>
<programlisting>
@@ -18095,6 +18137,15 @@
</para>
</note>
+ <para>
+ If <literal>USE_FRM</literal> is <emphasis>not</emphasis>
+ used, then a <literal>REPAIR TABLE</literal> checks the table
+ to see whether an upgrade is required and if it is necessary
+ performs the upgrade, following the same rules as
+ <literal>CHECK TABLE ... FOR UPGRADE</literal>. See
+ <xref linkend="check-table"/>, for more information.
+ </para>
+
<caution>
<para>
Do not use <literal>USE_FRM</literal> if your table was
@@ -19146,14 +19197,15 @@
<para>
<literal>SET TIMESTAMP</literal> affects the value returned
- by <literal>NOW()</literal> but not by
- <literal>SYSDATE()</literal>. This means that timestamp
- settings in the binary log have no effect on invocations of
- <literal>SYSDATE()</literal>. The server can be started with
- the <option>--sysdate-is-now</option> option to cause
- <literal>SYSDATE()</literal> to be an alias for
- <literal>NOW()</literal>, in which case <literal>SET
- TIMESTAMP</literal> affects both functions.
+ by <function role="sql">NOW()</function> but not by
+ <function role="sql">SYSDATE()</function>. This means that
+ timestamp settings in the binary log have no effect on
+ invocations of <function role="sql">SYSDATE()</function>.
+ The server can be started with the
+ <option>--sysdate-is-now</option> option to cause
+ <function role="sql">SYSDATE()</function> to be an alias for
+ <function role="sql">NOW()</function>, in which case
+ <literal>SET TIMESTAMP</literal> affects both functions.
</para>
</listitem>
@@ -22860,7 +22912,8 @@
<para>
<literal>SHOW TRIGGERS</literal> lists the triggers currently
defined on the MySQL server. This statement requires the
- <literal>SUPER</literal> privilege. The
+ <literal>TRIGGER</literal> privilege (prior to MySQL 5.1.22,
+ it requires the <literal>SUPER</literal> privilege). The
<literal>LIKE</literal> clause, if present, indicates which
trigger names to match. The <literal>WHERE</literal> clause
can be given to select rows using more general conditions, as
Modified: trunk/it/refman-5.1/stored-procedures.xml
===================================================================
--- trunk/it/refman-5.1/stored-procedures.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/it/refman-5.1/stored-procedures.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 6, Lines Added: 36, Lines Deleted: 33; 6101 bytes
@@ -499,15 +499,16 @@
</para>
<para>
- A routine that contains the <literal>NOW()</literal> function
- (or its synonyms) or <literal>RAND()</literal> is
- non-deterministic, but it might still be replication-safe. For
- <literal>NOW()</literal>, the binary log includes the timestamp
- and replicates correctly. <literal>RAND()</literal> also
- replicates correctly as long as it is invoked only once within a
- routine. (You can consider the routine execution timestamp and
- random number seed as implicit inputs that are identical on the
- master and slave.)
+ A routine that contains the
+ <function role="sql">NOW()</function> function (or its synonyms)
+ or <function role="sql">RAND()</function> is non-deterministic,
+ but it might still be replication-safe. For
+ <function role="sql">NOW()</function>, the binary log includes
+ the timestamp and replicates correctly.
+ <function role="sql">RAND()</function> also replicates correctly
+ as long as it is invoked only once within a routine. (You can
+ consider the routine execution timestamp and random number seed
+ as implicit inputs that are identical on the master and slave.)
</para>
<para>
@@ -594,8 +595,9 @@
format (the same format used in the <literal>GRANT</literal>
statement). The <replaceable>user_name</replaceable> and
<replaceable>host_name</replaceable> values both are required.
- <literal>CURRENT_USER</literal> also can be given as
- <literal>CURRENT_USER()</literal>. The default
+ <function role="sql" condition="function_current-user">CURRENT_USER</function>
+ also can be given as
+ <function role="sql">CURRENT_USER()</function>. The default
<literal>DEFINER</literal> value is the user who executes the
<literal>CREATE PROCEDURE</literal> or <literal>CREATE
FUNCTION</literal> or statement. (This is the same as
@@ -616,8 +618,8 @@
If you do not have the <literal>SUPER</literal> privilege,
the only legal <replaceable>user</replaceable> value is your
own account, either specified literally or by using
- <literal>CURRENT_USER</literal>. You cannot set the definer
- to some other account.
+ <function role="sql" condition="function_current-user">CURRENT_USER</function>.
+ You cannot set the definer to some other account.
</para>
</listitem>
@@ -1970,7 +1972,7 @@
<note>
<para>
- There is also an <literal>IF()</literal>
+ There is also an <function role="sql">IF()</function>
<emphasis>function</emphasis>, which differs from the
<literal>IF</literal> <emphasis>statement</emphasis>
described here. See
@@ -2521,9 +2523,9 @@
optional <literal>DETERMINISTIC</literal> characteristic, so
triggers are assumed to be always deterministic. However, this
assumption might in some cases be invalid. For example, the
- <literal>UUID()</literal> function is non-deterministic (and does
- not replicate). You should be careful about using such functions
- in triggers.
+ <function role="sql">UUID()</function> function is
+ non-deterministic (and does not replicate). You should be careful
+ about using such functions in triggers.
</para>
<para>
@@ -2757,27 +2759,28 @@
</para>
<para>
- Use of the <literal>NOW()</literal> function (or its
- synonyms) or <literal>RAND()</literal> does not
+ Use of the <function role="sql">NOW()</function> function
+ (or its synonyms) or
+ <function role="sql">RAND()</function> does not
necessarily make a function non-deterministic. For
- <literal>NOW()</literal>, the binary log includes the
- timestamp and replicates correctly.
- <literal>RAND()</literal> also replicates correctly as
- long as it is invoked only once within a function. (You
- can consider the function execution timestamp and random
- number seed as implicit inputs that are identical on the
- master and slave.)
+ <function role="sql">NOW()</function>, the binary log
+ includes the timestamp and replicates correctly.
+ <function role="sql">RAND()</function> also replicates
+ correctly as long as it is invoked only once within a
+ function. (You can consider the function execution
+ timestamp and random number seed as implicit inputs that
+ are identical on the master and slave.)
</para>
<para>
- <literal>SYSDATE()</literal> is not affected by the
- timestamps in the binary log, so it causes stored routines
- to be non-deterministic if statement-based logging is
- used. This does not occur if row-based logging is used, or
- if the server is started with the
+ <function role="sql">SYSDATE()</function> is not affected
+ by the timestamps in the binary log, so it causes stored
+ routines to be non-deterministic if statement-based
+ logging is used. This does not occur if row-based logging
+ is used, or if the server is started with the
<option>--sysdate-is-now</option> option to cause
- <literal>SYSDATE()</literal> to be an alias for
- <literal>NOW()</literal>.
+ <function role="sql">SYSDATE()</function> to be an alias
+ for <function role="sql">NOW()</function>.
</para>
</listitem>
Modified: trunk/pt/refman-5.1/restrictions.xml
===================================================================
--- trunk/pt/refman-5.1/restrictions.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/restrictions.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 5, Lines Added: 17, Lines Deleted: 11; 2861 bytes
@@ -205,8 +205,8 @@
</itemizedlist>
<para>
- The behavior that table columns do not take precedence over
- variables is non-standard.
+ The behavior that variables take precedence over table columns is
+ non-standard.
</para>
<para>
@@ -220,7 +220,11 @@
<literal>PARAMETERS</literal> table until MySQL 6.0, so
applications that need to acquire routine parameter information at
runtime must use workarounds such as parsing the output of
- <literal>SHOW CREATE</literal> statements.
+ <literal>SHOW CREATE</literal> statements or the
+ <literal>param_list</literal> column of the
+ <literal>mysql.proc</literal> table. <literal>param_list</literal>
+ contents can be processed from within a stored routine, unlike the
+ output from <literal>SHOW</literal>.
</para>
<para>
@@ -460,9 +464,9 @@
<listitem>
<para>
Subquery optimization for <literal>IN</literal> is not as
- effective as for the <literal>=</literal> operator or for
- <literal>IN(<replaceable>value_list</replaceable>)</literal>
- constructs.
+ effective as for the <literal>=</literal> operator or for the
+ <function role="sql">IN(<replaceable>value_list</replaceable>)</function>
+ operator.
</para>
<para>
@@ -504,8 +508,8 @@
<para>
An implication is that an <literal>IN</literal> subquery can
be much slower than a query written using an
- <literal>IN(<replaceable>value_list</replaceable>)</literal>
- construct that lists the same values that the subquery would
+ <function role="sql">IN(<replaceable>value_list</replaceable>)</function>
+ operator that lists the same values that the subquery would
return.
</para>
</listitem>
@@ -594,9 +598,11 @@
The reason for supporting row comparisons for
<literal>IN</literal> but not for the others is that
<literal>IN</literal> is implemented by rewriting it as a
- sequence of <literal>=</literal> comparisons and
- <literal>AND</literal> operations. This approach cannot be
- used for <literal>ALL</literal>, <literal>ANY</literal>, or
+ sequence of
+ <function role="sqlop" condition="operator_equal">=</function>
+ comparisons and <function role="sqlop">AND</function>
+ operations. This approach cannot be used for
+ <literal>ALL</literal>, <literal>ANY</literal>, or
<literal>SOME</literal>.
</para>
</listitem>
Modified: trunk/pt/refman-5.1/se-archive.xml
===================================================================
--- trunk/pt/refman-5.1/se-archive.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-archive.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 3, Lines Added: 7, Lines Deleted: 9; 1882 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="archive-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>ARCHIVE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>ARCHIVE</literal> storage engine</primary>
+ <primary>ARCHIVE storage engine</primary>
</indexterm>
<indexterm>
@@ -71,10 +69,10 @@
<para>
As of MySQL 5.1.6, the <literal>ARCHIVE</literal> engine supports
the <literal>AUTO_INCREMENT</literal> column attribute. The
- <literal>AUTO_INCREMENT</literal> columns can have either a unique
- or non-unique index. Attempting to create an index on any other
- column results in an error. The <literal>ARCHIVE</literal> engine
- also supports the <literal>AUTO_INCREMENT</literal> table option in
+ <literal>AUTO_INCREMENT</literal> column can have either a unique or
+ non-unique index. Attempting to create an index on any other column
+ results in an error. The <literal>ARCHIVE</literal> engine also
+ supports the <literal>AUTO_INCREMENT</literal> table option in
<literal>CREATE TABLE</literal> and <literal>ALTER TABLE</literal>
statements to specify the initial sequence value for a new table or
reset the sequence value for an existing table, respectively.
Modified: trunk/pt/refman-5.1/se-csv.xml
===================================================================
--- trunk/pt/refman-5.1/se-csv.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-csv.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 3, Lines Deleted: 5; 922 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="csv-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>CSV</literal> Storage Engine</title>
<indexterm>
- <primary><literal>CSV</literal> storage engine</primary>
+ <primary>CSV storage engine</primary>
</indexterm>
<indexterm>
Modified: trunk/pt/refman-5.1/se-example.xml
===================================================================
--- trunk/pt/refman-5.1/se-example.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-example.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 3, Lines Deleted: 5; 950 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="example-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>EXAMPLE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>EXAMPLE</literal> storage engine</primary>
+ <primary>EXAMPLE storage engine</primary>
</indexterm>
<indexterm>
Modified: trunk/pt/refman-5.1/se-federated.xml
===================================================================
--- trunk/pt/refman-5.1/se-federated.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-federated.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 17, Lines Added: 59, Lines Deleted: 56; 12270 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="federated-storage-engine">
@@ -10,7 +8,7 @@
<title>The <literal>FEDERATED</literal> Storage Engine</title>
<indexterm>
- <primary><literal>FEDERATED</literal> storage engine</primary>
+ <primary>FEDERATED storage engine</primary>
</indexterm>
<indexterm>
@@ -35,8 +33,8 @@
<para>
To examine the source for the <literal>FEDERATED</literal> engine,
- look in the <filename>sql</filename> directory of a MySQL source
- distribution.
+ look in the <filename>storage/federated</filename> directory of a
+ MySQL source distribution.
</para>
<formalpara role="mnmas-kb">
@@ -62,9 +60,9 @@
<para>
When you create a table using one of the standard storage engines
(such as <literal>MyISAM</literal>, <literal>CSV</literal> or
- <literal>InnoDB</literal>, the table consists of the table
+ <literal>InnoDB</literal>), the table consists of the table
definition and the associated data. When you create a
- <literal>FEDERATED</literal> table the table definition is the
+ <literal>FEDERATED</literal> table, the table definition is the
same, but the physical storage of the data is handled on a remote
server.
</para>
@@ -110,7 +108,7 @@
</para>
<para>
- The basic structure of a <literal>FEDERATED</literal> table set up
+ The basic structure of a <literal>FEDERATED</literal> table setup
is shown in <xref linkend="figure-se-federated-structure"/>.
</para>
@@ -175,10 +173,11 @@
<para>
The local server communicates with the remote server using MySQL
client C API functions. It invokes
- <literal>mysql_real_query()</literal> to send the statement. To
- read a result set, it uses <literal>mysql_store_result()</literal>
- and fetches rows one at a time using
- <literal>mysql_fetch_row()</literal>.
+ <function role="capi">mysql_real_query()</function> to send the
+ statement. To read a result set, it uses
+ <function role="capi">mysql_store_result()</function> and fetches
+ rows one at a time using
+ <function role="capi">mysql_fetch_row()</function>.
</para>
</section>
@@ -242,7 +241,7 @@
<note>
<para>
- When you create the local table is <emphasis>must</emphasis>
+ When you create the local table it <emphasis>must</emphasis>
have an identical definition to the remote table.
</para>
</note>
@@ -308,56 +307,57 @@
<listitem>
<para>
- <literal>scheme</literal> — is a recognized connection
- protocol. Only <literal>mysql</literal> is supported as the
- <replaceable>scheme</replaceable> value at this point.
+ <replaceable>scheme</replaceable> — is a recognized
+ connection protocol. Only <literal>mysql</literal> is
+ supported as the <replaceable>scheme</replaceable> value at
+ this point.
</para>
</listitem>
<listitem>
<para>
- <literal>user_name</literal> — the user name for the
- connection. This user must have been created on the remote
- server, and must have suitable privileges to perform the
- required actions (<literal>SELECT</literal>,
- <literal>INSERT</literal>, <literal>UPDATE</literal> etc.)
- on the remote table.
+ <replaceable>user_name</replaceable> — the username
+ for the connection. This user must have been created on the
+ remote server, and must have suitable privileges to perform
+ the required actions (<literal>SELECT</literal>,
+ <literal>INSERT</literal>, <literal>UPDATE</literal>, and so
+ forth) on the remote table.
</para>
</listitem>
<listitem>
<para>
- <literal>password</literal> — (optional) the
+ <replaceable>password</replaceable> — (optional) the
corresponding password for <literal>username</literal>.
</para>
</listitem>
<listitem>
<para>
- <literal>host_name</literal> — the hostname or IP
- address of the remote server.
+ <replaceable>host_name</replaceable> — the hostname or
+ IP address of the remote server.
</para>
</listitem>
<listitem>
<para>
- <literal>port_num</literal> — (optional) the port
- number for the remote server. The default is 3306.
+ <replaceable>port_num</replaceable> — (optional) the
+ port number for the remote server. The default is 3306.
</para>
</listitem>
<listitem>
<para>
- <literal>db_name</literal> — the name of the database
- holding the remote table.
+ <replaceable>db_name</replaceable> — the name of the
+ database holding the remote table.
</para>
</listitem>
<listitem>
<para>
- <literal>table_name</literal> — the name of the remote
- table. The name of the local and the remote table do not
- have to match.
+ <replaceable>tbl_name</replaceable> — the name of the
+ remote table. The name of the local and the remote table do
+ not have to match.
</para>
</listitem>
@@ -383,10 +383,10 @@
<para>
If you are creating a number of <literal>FEDERATED</literal>
tables on the same server, or if you want to simplify the
- process of creating <literal>FEDERATED</literal> tables, then
- you can use the <literal>CREATE SERVER</literal> statement to
- define the server connection parameters, just as you would with
- the <literal>CONNECTION</literal> string.
+ process of creating <literal>FEDERATED</literal> tables, you can
+ use the <literal>CREATE SERVER</literal> statement to define the
+ server connection parameters, just as you would with the
+ <literal>CONNECTION</literal> string.
</para>
<para>
@@ -399,8 +399,9 @@
OPTIONS (option ...)</programlisting>
<para>
- The <literal>server_name</literal> is used as the connection
- string when creating a new <literal>FEDERATED</literal> table.
+ The <replaceable>server_name</replaceable> is used as the
+ connection string when creating a new
+ <literal>FEDERATED</literal> table.
</para>
<para>
@@ -447,8 +448,7 @@
<para>
For more information on <literal>CREATE SERVER</literal>, see
- <xref
- linkend="create-server"/>.
+ <xref linkend="create-server"/>.
</para>
<para>
@@ -456,14 +456,16 @@
arguments as the <literal>CONNECTION</literal> string. The
<literal>CREATE SERVER</literal> statement updates the rows in
the <literal>mysql.servers</literal> table. See the table for
- information on the paramters when using the connection string,
+ information on the parameters when using the connection string,
options in the <literal>CREATE SERVER</literal> statement, and
the columns in the <literal>mysql.servers</literal> table. For
reference, the format of the <literal>CONNECTION</literal>
string is as follows:
</para>
-<programlisting>scheme://user_name[:password]@host_name[:port_num]/db_name/tbl_name</programlisting>
+<programlisting>
+<replaceable>scheme</replaceable>://<replaceable>user_name</replaceable>[:<replaceable>password</replaceable>]@<replaceable>host_name</replaceable>[:<replaceable>port_num</replaceable>]/<replaceable>db_name</replaceable>/<replaceable>tbl_name</replaceable>
+</programlisting>
<informaltable>
<tgroup cols="4">
@@ -482,37 +484,37 @@
<tbody>
<row>
<entry>Connection scheme</entry>
- <entry><literal>scheme</literal></entry>
+ <entry><replaceable>scheme</replaceable></entry>
<entry><literal>wrapper_name</literal></entry>
<entry><literal>Wrapper</literal></entry>
</row>
<row>
<entry>Remote user</entry>
- <entry><literal>user_name</literal></entry>
+ <entry><replaceable>user_name</replaceable></entry>
<entry><literal>USER</literal></entry>
<entry><literal>Username</literal></entry>
</row>
<row>
<entry>Remote password</entry>
- <entry><literal>password</literal></entry>
+ <entry><replaceable>password</replaceable></entry>
<entry><literal>PASSWORD</literal></entry>
<entry><literal>Password</literal></entry>
</row>
<row>
<entry>Remote host</entry>
- <entry><literal>host_name</literal></entry>
+ <entry><replaceable>host_name</replaceable></entry>
<entry><literal>HOST</literal></entry>
<entry><literal>Host</literal></entry>
</row>
<row>
<entry>Remote port</entry>
- <entry><literal>port_num</literal></entry>
+ <entry><replaceable>port_num</replaceable></entry>
<entry><literal>PORT</literal></entry>
<entry><literal>Port</literal></entry>
</row>
<row>
<entry>Remote database</entry>
- <entry><literal>db_name</literal></entry>
+ <entry><replaceable>db_name</replaceable></entry>
<entry><literal>DATABASE</literal></entry>
<entry><literal>Db</literal></entry>
</row>
@@ -540,7 +542,7 @@
<literal>FEDERATED</literal> tables may be replicated to other
slaves, but you must ensure that the slave servers are able to
use the user/password combination that is defined in the
- <literal>CONNECTION</literal> (or the row in the
+ <literal>CONNECTION</literal> string (or the row in the
<literal>mysql.servers</literal> table) to connect to the
remote server.
</para>
@@ -616,7 +618,7 @@
<listitem>
<para>
- Internally, implementation uses <literal>SELECT</literal>,
+ Internally, the implementation uses <literal>SELECT</literal>,
<literal>INSERT</literal>, <literal>UPDATE</literal>, and
<literal>DELETE</literal>, but not <literal>HANDLER</literal>.
</para>
@@ -629,8 +631,9 @@
<literal>UPDATE</literal>, <literal>DELETE</literal>,
<literal>TRUNCATE</literal>, and indexes. It does not support
<literal>ALTER TABLE</literal>, or any Data Definition
- Language statements other than <literal>DROP TABLE</literal>.
- The current implementation does not use prepared statements.
+ Language statements that directly affect the structure of the
+ table, other than <literal>DROP TABLE</literal>. The current
+ implementation does not use prepared statements.
<remark>
It remains to be seen whether the limited subset of the
@@ -739,8 +742,8 @@
<listitem>
<para>
Any <literal>DROP TABLE</literal> statement issued against a
- <literal>FEDERATED</literal> table will drop only the local
- table, not the remote table.
+ <literal>FEDERATED</literal> table drops only the local table,
+ not the remote table.
</para>
</listitem>
Modified: trunk/pt/refman-5.1/se-memory.xml
===================================================================
--- trunk/pt/refman-5.1/se-memory.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-memory.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 2, Lines Added: 6, Lines Deleted: 8; 1316 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="memory-storage-engine">
@@ -15,21 +13,21 @@
</remark>
<indexterm>
- <primary><literal>HEAP</literal> storage engine</primary>
+ <primary>HEAP storage engine</primary>
</indexterm>
<indexterm>
- <primary><literal>MEMORY</literal> storage engine</primary>
+ <primary>MEMORY storage engine</primary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>MEMORY</literal></secondary>
+ <secondary>MEMORY</secondary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>HEAP</literal></secondary>
+ <secondary>HEAP</secondary>
</indexterm>
<para>
Modified: trunk/pt/refman-5.1/se-merge.xml
===================================================================
--- trunk/pt/refman-5.1/se-merge.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/se-merge.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 3, Lines Added: 53, Lines Deleted: 13; 3153 bytes
@@ -1,8 +1,6 @@
<?xml version="1.0" encoding="utf-8"?>
-<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN"
-"http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd"
-[
- <!ENTITY % all.entities SYSTEM "all-entities.ent">
+<!DOCTYPE section PUBLIC "-//OASIS//DTD DocBook XML V4.3//EN" "http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd" [
+<!ENTITY % all.entities SYSTEM "all-entities.ent">
%all.entities;
]>
<section id="merge-storage-engine">
@@ -10,12 +8,12 @@
<title>The <literal>MERGE</literal> Storage Engine</title>
<indexterm>
- <primary><literal>MERGE</literal> storage engine</primary>
+ <primary>MERGE storage engine</primary>
</indexterm>
<indexterm>
<primary>tables</primary>
- <secondary><literal>MERGE</literal></secondary>
+ <secondary>MERGE</secondary>
</indexterm>
<indexterm>
@@ -697,15 +695,57 @@
</para>
</listitem>
+ <listitem>
+ <para>
+ Using different underlying row formats in
+ <literal>MyISAM</literal> tables with a parent
+ <literal>MERGE</literal> table is currently known to fail. See
+ Bug #32364
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot
+ be opened or used because of a problem with an underlying
+ table, <literal>CHECK TABLE</literal> displays information
+ about which table caused the problem.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot change the union list
+ of a non-temporary <literal>MERGE</literal> table when LOCK
+ TABLES is in effect. The following does
+ <emphasis>not</emphasis> work:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ...;
+ LOCK TABLES t1 WRITE, t2 WRITE, m1 WRITE;
+ ALTER TABLE m1 ... UNION=(t1,t2) ...;</programlisting>
+
+ However, you can do this with a temporary
+ <literal>MERGE</literal> table.
+ </para>
+ </listitem>
+
+ <listitem>
+ <para>
+ Starting with MySQL 5.1.23, you cannot create a
+ <literal>MERGE</literal> table with <literal>CREATE ...
+ SELECT</literal>, neither as a temporary
+ <literal>MERGE</literal> table, nor as a non-temporary
+ <literal>MERGE</literal> table. For example:
+
+<programlisting>CREATE TABLE m1 ... ENGINE=MRG_MYISAM ... SELECT ...;</programlisting>
+
+ Gives error message: table is not <literal>BASE
+ TABLE</literal>.
+ </para>
+ </listitem>
+
</itemizedlist>
- <para>
- As of MySQL 5.1.20, if a <literal>MERGE</literal> table cannot be
- opened or used because of a problem with an underlying table,
- <literal>CHECK TABLE</literal> displays information about which
- table caused the problem.
- </para>
-
</section>
</section>
Modified: trunk/pt/refman-5.1/sql-syntax.xml
===================================================================
--- trunk/pt/refman-5.1/sql-syntax.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/sql-syntax.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 27, Lines Added: 133, Lines Deleted: 80; 18259 bytes
@@ -1451,23 +1451,6 @@
will not apply to them.
</para>
- <para>
- To change only the <emphasis>default</emphasis> character
- set for a table, use this statement:
- </para>
-
-<programlisting>
-ALTER TABLE <replaceable>tbl_name</replaceable> DEFAULT CHARACTER SET <replaceable>charset_name</replaceable>;
-</programlisting>
-
- <para>
- The word <literal>DEFAULT</literal> is optional. The default
- character set is the character set that is used if you do
- not specify the character set for columns that you add to a
- table later (for example, with <literal>ALTER TABLE ... ADD
- column</literal>).
- </para>
-
<warning>
<para>
The <literal>CONVERT TO</literal> operation converts
@@ -1490,6 +1473,23 @@
you convert to or from <literal>BLOB</literal> columns.
</para>
</warning>
+
+ <para>
+ To change only the <emphasis>default</emphasis> character
+ set for a table, use this statement:
+ </para>
+
+<programlisting>
+ALTER TABLE <replaceable>tbl_name</replaceable> DEFAULT CHARACTER SET <replaceable>charset_name</replaceable>;
+</programlisting>
+
+ <para>
+ The word <literal>DEFAULT</literal> is optional. The default
+ character set is the character set that is used if you do
+ not specify the character set for columns that you add to a
+ table later (for example, with <literal>ALTER TABLE ... ADD
+ column</literal>).
+ </para>
</listitem>
<listitem>
@@ -2781,7 +2781,7 @@
<para>
For each <literal><replaceable>option</replaceable></literal>
you must specify either a character literal or numeric literal.
- Character literals are UTF8, support a maximum length of 64
+ Character literals are UTF-8, support a maximum length of 64
characters and default to a blank (empty) string. String
literals are silently truncated to 64 characters. Numeric
literals must be a number between 0 and 9999, default value is
@@ -3143,7 +3143,7 @@
</para>
<para>
- <replaceable>data_type</replaceable> represents the data type is
+ <replaceable>data_type</replaceable> represents the data type in
a column definition. <replaceable>spatial_type</replaceable>
represents a spatial data type. The data type syntax shown is
representative only. For a full description of the syntax
@@ -3327,7 +3327,7 @@
must be a constant; it cannot be a function or an
expression. This means, for example, that you cannot set the
default for a date column to be the value of a function such
- as <literal>NOW()</literal> or
+ as <function role="sql">NOW()</function> or
<literal>CURRENT_DATE</literal>. The exception is that you
can specify <literal>CURRENT_TIMESTAMP</literal> as the
default for a <literal>TIMESTAMP</literal> column. See
@@ -4055,6 +4055,14 @@
relative path.
</para>
+ <important>
+ <para>
+ Beginning with MySQL 5.1.23, table-level <literal>DATA
+ DIRECTORY</literal> and <literal>INDEX DIRECTORY</literal>
+ are ignored for partitioned tables. (Bug #32091)
+ </para>
+ </important>
+
<para>
These options work only when you are not using the
<option>--skip-symbolic-links</option> option. Your
@@ -4391,9 +4399,10 @@
The <literal>LINEAR</literal> keyword entails a somewhat
different algorithm. In this case, the number of the
partition in which a row is stored is calculated as the
- result of one or more logical <literal>AND</literal>
- operations. For discussion and examples of linear hashing,
- see <xref linkend="partitioning-linear-hash"/>.
+ result of one or more logical
+ <function role="sqlop">AND</function> operations. For
+ discussion and examples of linear hashing, see
+ <xref linkend="partitioning-linear-hash"/>.
</para>
</listitem>
@@ -4419,7 +4428,8 @@
linear partitioning by using the <literal>LINEAR</literal>
keyword. This has the same effect as with tables that are
partitioned by <literal>HASH</literal>. That is, the
- partition number is found using the <literal>&</literal>
+ partition number is found using the
+ <function role="sqlop" condition="operator_bitwise-and">&</function>
operator rather than the modulus (see
<xref linkend="partitioning-linear-hash"/>, and
<xref linkend="partitioning-key"/>, for details). This
@@ -4769,11 +4779,9 @@
</para>
<para>
- On Windows, paths used for <literal>DATA DIRECTORY</literal>
- and <literal>INDEX DIRECTORY</literal> must use the
- <literal>/</literal> (slash) character and not the
- <literal>\</literal> (backslash) character. See
- <xref linkend="partitioning-overview"/>, for an example.
+ On Windows, the <literal>DATA DIRECTORY</literal> and
+ <literal>INDEX DIRECTORY</literal> options are not supported
+ for individual partitions or subpartitions (Bug #30459).
</para>
<note>
@@ -5821,12 +5829,18 @@
implemented in 5.1 for mapping database names to database
directory names (see <xref linkend="identifier-mapping"/>).
However, use of this statement could result in loss of database
- contents. Do not use <literal>RENAME DATABASE</literal>. Use
- <literal>ALTER DATABASE <replaceable>db_name</replaceable>
- UPGRADE DATA DIRECTORY NAME</literal> instead (see
- <xref linkend="alter-database"/>).
+ contents, which is why it was removed. Do not use
+ <literal>RENAME DATABASE</literal> in earlier versions in which
+ it is present.
</para>
+ <para>
+ To perform the task of upgrading database names with the new
+ encoding, use <literal>ALTER DATABASE
+ <replaceable>db_name</replaceable> UPGRADE DATA DIRECTORY
+ NAME</literal> instead (see <xref linkend="alter-database"/>).
+ </para>
+
</section>
<section id="rename-table">
@@ -5996,8 +6010,10 @@
<para>
For the single-table syntax, the <literal>DELETE</literal>
- statement deletes rows from <replaceable>tbl_name</replaceable>
- and returns the number of rows deleted. The
+ statement deletes rows from <replaceable>tbl_name</replaceable>.
+ The number of rows deleted is returned by the
+ <function role="sql">ROW_COUNT()</function> function (see
+ <xref linkend="information-functions"/>). The
<literal>WHERE</literal> clause, if given, specifies the
conditions that identify which rows to delete. With no
<literal>WHERE</literal> clause, all rows are deleted. If the
@@ -6949,11 +6965,33 @@
<xref linkend="insert-delayed"/>.
</para>
+ <indexterm>
+ <primary>DELAYED</primary>
+ <secondary>when ignored</secondary>
+ </indexterm>
+
<para>
<literal>DELAYED</literal> is ignored with <literal>INSERT
... SELECT</literal> or <literal>INSERT ... ON DUPLICATE KEY
UPDATE</literal>.
</para>
+
+ <indexterm>
+ <primary>stored functions</primary>
+ <secondary>and INSERT DELAYED</secondary>
+ </indexterm>
+
+ <indexterm>
+ <primary>triggers</primary>
+ <secondary>and INSERT DELAYED</secondary>
+ </indexterm>
+
+ <para>
+ Beginning with MySQL 5.1.19, <literal>DELAYED</literal> is
+ also disregarded for an <literal>INSERT</literal> that uses
+ functions accessing tables or triggers, or that is called
+ from a function or a trigger.
+ </para>
</listitem>
<listitem>
@@ -7557,19 +7595,20 @@
<para>
You can use the
- <literal>VALUES(<replaceable>col_name</replaceable>)</literal>
+ <function role="sql">VALUES(<replaceable>col_name</replaceable>)</function>
function in the <literal>UPDATE</literal> clause to refer to
column values from the <literal>INSERT</literal> portion of
the <literal>INSERT ... UPDATE</literal> statement. In other
words,
- <literal>VALUES(<replaceable>col_name</replaceable>)</literal>
+ <function role="sql">VALUES(<replaceable>col_name</replaceable>)</function>
in the <literal>UPDATE</literal> clause refers to the value of
<replaceable>col_name</replaceable> that would be inserted,
had no duplicate-key conflict occurred. This function is
especially useful in multiple-row inserts. The
- <literal>VALUES()</literal> function is meaningful only in
- <literal>INSERT ... UPDATE</literal> statements and returns
- <literal>NULL</literal> otherwise. Example:
+ <function role="sql">VALUES()</function> function is
+ meaningful only in <literal>INSERT ... UPDATE</literal>
+ statements and returns <literal>NULL</literal> otherwise.
+ Example:
</para>
<programlisting>
@@ -10766,8 +10805,8 @@
<para>
With an inner join,
- <literal>COALESCE(a.c1,b.c1)</literal> is the same as
- either <literal>a.c1</literal> or
+ <function role="sql">COALESCE(a.c1,b.c1)</function> is
+ the same as either <literal>a.c1</literal> or
<literal>b.c1</literal> because both columns will have
the same value. With an outer join (such as
<literal>LEFT JOIN</literal>), one of the two columns
@@ -12690,9 +12729,10 @@
<para>
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. See <xref linkend="information-functions"/>.
+ Using MySQL facilities like the
+ <function role="sql">BENCHMARK()</function> function, you can
+ get an idea about what helps in your own situation. See
+ <xref linkend="information-functions"/>.
</para>
<para>
@@ -12736,9 +12776,9 @@
<listitem>
<para>
MySQL enhances expressions of the following form with an
- expression involving <literal>MIN()</literal> or
- <literal>MAX()</literal>, unless <literal>NULL</literal>
- values or empty sets are involved:
+ expression involving <function role="sql">MIN()</function>
+ or <function role="sql">MAX()</function>, unless
+ <literal>NULL</literal> values or empty sets are involved:
</para>
<programlisting>
@@ -12818,7 +12858,7 @@
</programlisting>
<para>
- Can be rewritten using <literal>IN()</literal>:
+ Can be rewritten as:
</para>
<programlisting>
@@ -12877,8 +12917,8 @@
<listitem><para>
The third option is to use interactive SQL to construct a set of
<literal>DELETE</literal> statements automatically, using the
- MySQL extension <literal>CONCAT()</literal> (in lieu of the
- standard <literal>||</literal> operator). For example:
+ MySQL extension <function role="sql">CONCAT()</function> (in lieu of the
+ standard <function role="sqlop" condition="operator_or">||</function> operator). For example:
</para>
<programlisting>
@@ -13480,9 +13520,9 @@
<listitem>
<para>
For help on a specific help topic, such as the
- <literal>ASCII()</literal> function or the <literal>CREATE
- TABLE</literal> statement, use the associated keyword or
- keywords:
+ <function role="sql">ASCII()</function> function or the
+ <literal>CREATE TABLE</literal> statement, use the
+ associated keyword or keywords:
</para>
<programlisting>
@@ -13706,9 +13746,9 @@
<para>
Before MySQL 5.1.17, if you intend to use the
- <literal>HELP()</literal> statement while other tables are
- locked with <literal>LOCK TABLES</literal>, you must also lock
- the required
+ <literal>HELP</literal> statement while other tables are locked
+ with <literal>LOCK TABLES</literal>, you must also lock the
+ required
<literal>mysql.help_<replaceable>xxx</replaceable></literal>
tables. See <xref linkend="lock-tables"/>.
</para>
@@ -15591,8 +15631,8 @@
statement. In particular, to specify the password in plain
text, omit the <literal>PASSWORD</literal> keyword. To specify
the password as the hashed value as returned by the
- <literal>PASSWORD()</literal> function, include the
- <literal>PASSWORD</literal> keyword. See
+ <function role="sql">PASSWORD()</function> function, include
+ the <literal>PASSWORD</literal> keyword. See
<xref linkend="grant"/>.
</para>
@@ -16352,12 +16392,12 @@
<para>
The privileges for a table, column, or routine are formed
- additively as the logical <literal>OR</literal> of the
- privileges at each of the privilege levels. For example, if
- the <literal>mysql.user</literal> table specifies that a user
- has a global <literal>SELECT</literal> privilege, the
- privilege cannot be denied by an entry at the database, table,
- or column level.
+ additively as the logical <function role="sqlop">OR</function>
+ of the privileges at each of the privilege levels. For
+ example, if the <literal>mysql.user</literal> table specifies
+ that a user has a global <literal>SELECT</literal> privilege,
+ the privilege cannot be denied by an entry at the database,
+ table, or column level.
</para>
<para>
@@ -16437,9 +16477,10 @@
<para>
In the <literal>IDENTIFIED BY</literal> clause, the password
should be given as the literal password value. It is
- unnecessary to use the <literal>PASSWORD()</literal> function
- as it is for the <literal>SET PASSWORD</literal> statement.
- For example:
+ unnecessary to use the
+ <function role="sql">PASSWORD()</function> function as it is
+ for the <literal>SET PASSWORD</literal> statement. For
+ example:
</para>
<programlisting>
@@ -16448,9 +16489,10 @@
<para>
If you do not want to send the password in clear text and you
- know the hashed value that <literal>PASSWORD()</literal> would
- return for the password, you can specify the hashed value
- preceded by the keyword <literal>PASSWORD</literal>:
+ know the hashed value that
+ <function role="sql">PASSWORD()</function> would return for
+ the password, you can specify the hashed value preceded by the
+ keyword <literal>PASSWORD</literal>:
</para>
<programlisting>
@@ -18095,6 +18137,15 @@
</para>
</note>
+ <para>
+ If <literal>USE_FRM</literal> is <emphasis>not</emphasis>
+ used, then a <literal>REPAIR TABLE</literal> checks the table
+ to see whether an upgrade is required and if it is necessary
+ performs the upgrade, following the same rules as
+ <literal>CHECK TABLE ... FOR UPGRADE</literal>. See
+ <xref linkend="check-table"/>, for more information.
+ </para>
+
<caution>
<para>
Do not use <literal>USE_FRM</literal> if your table was
@@ -19146,14 +19197,15 @@
<para>
<literal>SET TIMESTAMP</literal> affects the value returned
- by <literal>NOW()</literal> but not by
- <literal>SYSDATE()</literal>. This means that timestamp
- settings in the binary log have no effect on invocations of
- <literal>SYSDATE()</literal>. The server can be started with
- the <option>--sysdate-is-now</option> option to cause
- <literal>SYSDATE()</literal> to be an alias for
- <literal>NOW()</literal>, in which case <literal>SET
- TIMESTAMP</literal> affects both functions.
+ by <function role="sql">NOW()</function> but not by
+ <function role="sql">SYSDATE()</function>. This means that
+ timestamp settings in the binary log have no effect on
+ invocations of <function role="sql">SYSDATE()</function>.
+ The server can be started with the
+ <option>--sysdate-is-now</option> option to cause
+ <function role="sql">SYSDATE()</function> to be an alias for
+ <function role="sql">NOW()</function>, in which case
+ <literal>SET TIMESTAMP</literal> affects both functions.
</para>
</listitem>
@@ -22860,7 +22912,8 @@
<para>
<literal>SHOW TRIGGERS</literal> lists the triggers currently
defined on the MySQL server. This statement requires the
- <literal>SUPER</literal> privilege. The
+ <literal>TRIGGER</literal> privilege (prior to MySQL 5.1.22,
+ it requires the <literal>SUPER</literal> privilege). The
<literal>LIKE</literal> clause, if present, indicates which
trigger names to match. The <literal>WHERE</literal> clause
can be given to select rows using more general conditions, as
Modified: trunk/pt/refman-5.1/stored-procedures.xml
===================================================================
--- trunk/pt/refman-5.1/stored-procedures.xml 2007-12-09 04:05:45 UTC (rev 9215)
+++ trunk/pt/refman-5.1/stored-procedures.xml 2007-12-09 04:05:59 UTC (rev 9216)
Changed blocks: 6, Lines Added: 36, Lines Deleted: 33; 6101 bytes
@@ -499,15 +499,16 @@
</para>
<para>
- A routine that contains the <literal>NOW()</literal> function
- (or its synonyms) or <literal>RAND()</literal> is
- non-deterministic, but it might still be replication-safe. For
- <literal>NOW()</literal>, the binary log includes the timestamp
- and replicates correctly. <literal>RAND()</literal> also
- replicates correctly as long as it is invoked only once within a
- routine. (You can consider the routine execution timestamp and
- random number seed as implicit inputs that are identical on the
- master and slave.)
+ A routine that contains the
+ <function role="sql">NOW()</function> function (or its synonyms)
+ or <function role="sql">RAND()</function> is non-deterministic,
+ but it might still be replication-safe. For
+ <function role="sql">NOW()</function>, the binary log includes
+ the timestamp and replicates correctly.
+ <function role="sql">RAND()</function> also replicates correctly
+ as long as it is invoked only once within a routine. (You can
+ consider the routine execution timestamp and random number seed
+ as implicit inputs that are identical on the master and slave.)
</para>
<para>
@@ -594,8 +595,9 @@
format (the same format used in the <literal>GRANT</literal>
statement). The <replaceable>user_name</replaceable> and
<replaceable>host_name</replaceable> values both are required.
- <literal>CURRENT_USER</literal> also can be given as
- <literal>CURRENT_USER()</literal>. The default
+ <function role="sql" condition="function_current-user">CURRENT_USER</function>
+ also can be given as
+ <function role="sql">CURRENT_USER()</function>. The default
<literal>DEFINER</literal> value is the user who executes the
<literal>CREATE PROCEDURE</literal> or <literal>CREATE
FUNCTION</literal> or statement. (This is the same as
@@ -616,8 +618,8 @@
If you do not have the <literal>SUPER</literal> privilege,
the only legal <replaceable>user</replaceable> value is your
own account, either specified literally or by using
- <literal>CURRENT_USER</literal>. You cannot set the definer
- to some other account.
+ <function role="sql" condition="function_current-user">CURRENT_USER</function>.
+ You cannot set the definer to some other account.
</para>
</listitem>
@@ -1970,7 +1972,7 @@
<note>
<para>
- There is also an <literal>IF()</literal>
+ There is also an <function role="sql">IF()</function>
<emphasis>function</emphasis>, which differs from the
<literal>IF</literal> <emphasis>statement</emphasis>
described here. See
@@ -2521,9 +2523,9 @@
optional <literal>DETERMINISTIC</literal> characteristic, so
triggers are assumed to be always deterministic. However, this
assumption might in some cases be invalid. For example, the
- <literal>UUID()</literal> function is non-deterministic (and does
- not replicate). You should be careful about using such functions
- in triggers.
+ <function role="sql">UUID()</function> function is
+ non-deterministic (and does not replicate). You should be careful
+ about using such functions in triggers.
</para>
<para>
@@ -2757,27 +2759,28 @@
</para>
<para>
- Use of the <literal>NOW()</literal> function (or its
- synonyms) or <literal>RAND()</literal> does not
+ Use of the <function role="sql">NOW()</function> function
+ (or its synonyms) or
+ <function role="sql">RAND()</function> does not
necessarily make a function non-deterministic. For
- <literal>NOW()</literal>, the binary log includes the
- timestamp and replicates correctly.
- <literal>RAND()</literal> also replicates correctly as
- long as it is invoked only once within a function. (You
- can consider the function execution timestamp and random
- number seed as implicit inputs that are identical on the
- master and slave.)
+ <function role="sql">NOW()</function>, the binary log
+ includes the timestamp and replicates correctly.
+ <function role="sql">RAND()</function> also replicates
+ correctly as long as it is invoked only once within a
+ function. (You can consider the function execution
+ timestamp and random number seed as implicit inputs that
+ are identical on the master and slave.)
</para>
<para>
- <literal>SYSDATE()</literal> is not affected by the
- timestamps in the binary log, so it causes stored routines
- to be non-deterministic if statement-based logging is
- used. This does not occur if row-based logging is used, or
- if the server is started with the
+ <function role="sql">SYSDATE()</function> is not affected
+ by the timestamps in the binary log, so it causes stored
+ routines to be non-deterministic if statement-based
+ logging is used. This does not occur if row-based logging
+ is used, or if the server is started with the
<option>--sysdate-is-now</option> option to cause
- <literal>SYSDATE()</literal> to be an alias for
- <literal>NOW()</literal>.
+ <function role="sql">SYSDATE()</function> to be an alias
+ for <function role="sql">NOW()</function>.
</para>
</listitem>
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r9216 - in trunk: . it/refman-5.1 pt/refman-5.1 | paul | 9 Dec |