From: Steve Hay Date: February 26 2004 2:58pm Subject: Re: Bug in new FOREIGN KEY checks in MySQLInnoDB/4.0.18 List-Archive: http://lists.mysql.com/bugs/15258 Message-Id: <403E0991.10209@uk.radan.com> MIME-Version: 1.0 Content-Type: text/plain Content-Transfer-Encoding: 7bit Sinisa Milivojevic wrote: >Steve Hay writes: > > >>Hi, >> >>I've just upgraded from MySQL 4.0.16 to 4.0.18 and now find that some >>commands that used to work without error (dropping and re-creating a >>database) no longer work. >> >>The error is: >> >> error: 'Cannot delete or update a parent row: a foreign key >>constraint fails' >> >>which presumably relates to the first item in the InnoDB version history >>(http://www.innodb.com/ibman.php#InnoDB.history). (All the tables in >>the database concerned are InnoDB tables.) >> >>It appears that the foreign key constraint is being checked even when >>dropping the database, which I assume is not intended. >> >>I tried a simple case of one table X referencing another table Y, and >>"DROP DATABASE" works fine (even with data in it, so foreign key >>constraints are not being checked here, which is as I would expect). I >>tried another case with two tables X and Y referencing one table Z, but >>still no error. Finally, I reproduced my problem by having table X >>referencing table Y and table Y referencing table Z. >> >>The following DOS command-lines result in the error above: >> >>I'm running Windows XP SP1. >> >>Regards, >>- Steve >> >> >> > >Hi! > >Yes, the above is now the expected behaviour and it is documented in >our Changelog. > >All you have to do is drop tables in the right order. > > I understand that if I was issuing DROP TABLE statements then I would need to put them in the right order, but I'm doing a DROP DATABASE. Surely foreign key constraints should not be checked when the entire database is being dropped. If they /are/ supposed to be checked then the other cases that I mentioned above (where DROP DATABASE worked fine) are not working properly! - Steve ------------------------------------------------ Radan Computational Ltd. The information contained in this message and any files transmitted with it are confidential and intended for the addressee(s) only. If you have received this message in error or there are any problems, please notify the sender immediately. The unauthorized use, disclosure, copying or alteration of this message is strictly forbidden. Note that any views or opinions presented in this email are solely those of the author and do not necessarily represent those of Radan Computational Ltd. The recipient(s) of this message should check it and any attached files for viruses: Radan Computational will accept no liability for any damage caused by any virus transmitted by this email.