Author: paul
Date: 2007-03-23 16:42:33 +0100 (Fri, 23 Mar 2007)
New Revision: 5526
Log:
r22141@polar: paul | 2007-03-23 10:39:43 -0500
You cannot use ALTER TABLE to change an InnoDB table that has foreign
key constraints to some other storage engine. (Heikki)
Modified:
trunk/refman-4.1/se-innodb.xml
trunk/refman-5.0/se-innodb.xml
trunk/refman-5.1/se-innodb.xml
Property changes on: trunk
___________________________________________________________________
Name: svk:merge
- 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:22051
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:18127
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:14593
+ 4767c598-dc10-0410-bea0-d01b485662eb:/mysqldoc-local/mysqldoc/trunk:22141
7d8d2c4e-af1d-0410-ab9f-b038ce55645b:/mysqldoc-local/mysqldoc:18127
b5ec3a16-e900-0410-9ad2-d183a3acac99:/mysqldoc-local/mysqldoc/trunk:14218
bf112a9c-6c03-0410-a055-ad865cd57414:/mysqldoc-local/mysqldoc/trunk:14593
Modified: trunk/refman-4.1/se-innodb.xml
===================================================================
--- trunk/refman-4.1/se-innodb.xml 2007-03-23 15:17:40 UTC (rev 5525)
+++ trunk/refman-4.1/se-innodb.xml 2007-03-23 15:42:33 UTC (rev 5526)
Changed blocks: 2, Lines Added: 7, Lines Deleted: 3; 1508 bytes
@@ -2787,7 +2787,11 @@
DATA</literal> or <literal>ALTER TABLE</literal> operations.
However, even if <literal>FOREIGN_KEY_CHECKS=0</literal>, InnoDB
does not allow the creation of a foreign key constraint where a
- column references a non-matching column type.
+ column references a non-matching column type. Also, if an
+ <literal>InnoDB</literal> table has foreign key constraints,
+ <literal>ALTER TABLE</literal> cannot be used to change the
+ table to use another storage engine. To alter the storage
+ engine, you must drop any foreign key constraints first.
<literal>FOREIGN_KEY_CHECKS</literal> is available starting from
MySQL 3.23.52 and 4.0.3.
</para>
@@ -2926,8 +2930,8 @@
at all. MySQL replication is based on the binary log where MySQL
writes SQL statements that modify data. A transaction that fails
(for example, because of a foreign key violation, or because it
- is rolled back) is not written to the binary log, so it is
- not sent to slaves. See <xref linkend="commit"/>.
+ is rolled back) is not written to the binary log, so it is not
+ sent to slaves. See <xref linkend="commit"/>.
</para>
</section>
Modified: trunk/refman-5.0/se-innodb.xml
===================================================================
--- trunk/refman-5.0/se-innodb.xml 2007-03-23 15:17:40 UTC (rev 5525)
+++ trunk/refman-5.0/se-innodb.xml 2007-03-23 15:42:33 UTC (rev 5526)
Changed blocks: 1, Lines Added: 5, Lines Deleted: 1; 898 bytes
@@ -2814,7 +2814,11 @@
DATA</literal> and <literal>ALTER TABLE</literal> operations.
However, even if <literal>FOREIGN_KEY_CHECKS=0</literal>, InnoDB
does not allow the creation of a foreign key constraint where a
- column references a non-matching column type.
+ column references a non-matching column type. Also, if an
+ <literal>InnoDB</literal> table has foreign key constraints,
+ <literal>ALTER TABLE</literal> cannot be used to change the
+ table to use another storage engine. To alter the storage
+ engine, you must drop any foreign key constraints first.
</para>
<para>
Modified: trunk/refman-5.1/se-innodb.xml
===================================================================
--- trunk/refman-5.1/se-innodb.xml 2007-03-23 15:17:40 UTC (rev 5525)
+++ trunk/refman-5.1/se-innodb.xml 2007-03-23 15:42:33 UTC (rev 5526)
Changed blocks: 1, Lines Added: 5, Lines Deleted: 1; 898 bytes
@@ -2819,7 +2819,11 @@
DATA</literal> and <literal>ALTER TABLE</literal> operations.
However, even if <literal>FOREIGN_KEY_CHECKS=0</literal>, InnoDB
does not allow the creation of a foreign key constraint where a
- column references a non-matching column type.
+ column references a non-matching column type. Also, if an
+ <literal>InnoDB</literal> table has foreign key constraints,
+ <literal>ALTER TABLE</literal> cannot be used to change the
+ table to use another storage engine. To alter the storage
+ engine, you must drop any foreign key constraints first.
</para>
<para>
| Thread |
|---|
| • svn commit - mysqldoc@docsrva: r5526 - in trunk: . refman-4.1 refman-5.0 refman-5.1 | paul | 23 Mar |