Hi,
Egor Egorov wrote:
> Can you create a test case? I.e. a .sql file which is supposed to drop the
> table well but instead fails?
>
> This will help us determine if it's a bug and fix if it is.
Thanks, this hit a pretty interesting nail for me: I can dump it, but I can't load the
dump into the database again. I get:
ERROR 1005 at line 28: Can't create table './test1/aktionen_produkte.frm' (errno: 150)
The definition of the Table is:
CREATE TABLE `aktionen_produkte` (
`ap_id` int(10) unsigned NOT NULL auto_increment,
`ap_pr_id_produkt` int(10) unsigned NOT NULL default '0',
`ap_ak_id_aktion` int(10) unsigned NOT NULL default '0',
PRIMARY KEY (`ap_id`),
KEY `aktionen_produkte_FKIndex1` (`ap_ak_id_aktion`),
KEY `aktionen_produkte_FKIndex2` (`ap_pr_id_produkt`),
CONSTRAINT `aktionen_produkte_ibfk_1` FOREIGN KEY (`ap_ak_id_aktion`) REFERENCES
`aktionen` (`ak_id`) ON DELETE NO ACTION ON UPDATE NO ACTION,
CONSTRAINT `aktionen_produkte_ibfk_2` FOREIGN KEY (`ap_pr_id_produkt`) REFERENCES
`produkte` (`pr_id`) ON DELETE NO ACTION ON UPDATE NO ACTION
) TYPE=InnoDB;
I guess I can see where the problem is: the order of creation of the tables is important,
because if tries to create contraints to table which do not exist (yet) because they a
further down in the dump file.
Manually reordering doesn't seem very sexy to me. I read the mysqldump manpage but it
doesn't tell me an option how to have mysqldump respect the ordering. Any ideas?
thanks,
- Markus