# This is a fix for InnoDB in MySQL >= 4.1.x # It "suspends judgement" for fkey relationships until are tables are set. SET FOREIGN_KEY_CHECKS = 0; #----------------------------------------------------------------------------- #-- component #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `component`; CREATE TABLE `component` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `EAN` INTEGER(20) NOT NULL, `name` VARCHAR(255), `quantity` INTEGER(10), PRIMARY KEY (`id`) )Type=MyISAM; #----------------------------------------------------------------------------- #-- product #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `product`; CREATE TABLE `product` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `EAN` INTEGER(20) NOT NULL, `name` VARCHAR(255), PRIMARY KEY (`id`) )Type=MyISAM; #----------------------------------------------------------------------------- #-- production #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `production`; CREATE TABLE `production` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `product_id` INTEGER NOT NULL, `date` DATE NOT NULL, `quantity` INTEGER, `status` VARCHAR, PRIMARY KEY (`id`), INDEX `production_FI_1` (`product_id`), CONSTRAINT `production_FK_1` FOREIGN KEY (`product_id`) REFERENCES `product` (`id`) )Type=MyISAM; #----------------------------------------------------------------------------- #-- prod_cont #----------------------------------------------------------------------------- DROP TABLE IF EXISTS `prod_cont`; CREATE TABLE `prod_cont` ( `id` INTEGER NOT NULL AUTO_INCREMENT, `component_id` INTEGER NOT NULL, `product_id` INTEGER NOT NULL, `quantity` INTEGER NOT NULL, PRIMARY KEY (`id`), INDEX `prod_cont_FI_1` (`component_id`), CONSTRAINT `prod_cont_FK_1` FOREIGN KEY (`component_id`) REFERENCES `component` (`id`), INDEX `prod_cont_FI_2` (`product_id`), CONSTRAINT `prod_cont_FK_2` FOREIGN KEY (`product_id`) REFERENCES `product` (`id`) )Type=MyISAM; # This restores the fkey checks, after having unset them earlier SET FOREIGN_KEY_CHECKS = 1;