Hi,

I have found this too.  I think it is as a result of a change introduced in
4.0.18. From http://www.innodb.com/ibman.php#InnoDB.history :

MySQL/InnoDB-4.0.18, February 13, 2004
 - Do not allow dropping a table referenced by a FOREIGN KEY constraint,
unless the user does SET FOREIGN_KEY_CHECKS=0. The error message here is
somewhat misleading 'Cannot delete or update a parent row...', and must be
changed in a future version 4.1.x.

It's a good change, but I'm guessing that InnoDb is handling a drop database
first as if all tables are being dropped in some arbirtary order and hence
not respecting foreign keys.

One solution is to disable foreign key checks before the drop, and then
re-enable them afterwards, or alternatively explicitly drop all tables in
the correct order before dropping the database.

I wonder if there are any plans to fix this in future versions on InnoDb?

Thanks,

Mike

> -----Original Message-----
> From: Tom O'Neil [mailto:[EMAIL PROTECTED]
> Sent: 25 March 2004 22:07
> To: [EMAIL PROTECTED]
> Subject: Error dropping databases
>
>
> I am trying to drop several InnoDB and am unable to do
> so. I login to the command line client and enter "drop
> database [db_name];" and then get this error:
>
> ERROR 1217: Cannot delete or update a parent row: a
> foreign key constraint fails
>
> Why am I unable to drop these databases?
>
> Tom
>
> =====
>
>
> --
> MySQL General Mailing List
> For list archives: http://lists.mysql.com/mysql
> To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]
>
>
>


-- 
MySQL General Mailing List
For list archives: http://lists.mysql.com/mysql
To unsubscribe:    http://lists.mysql.com/[EMAIL PROTECTED]

Reply via email to