Valami hasonló fele mozdultam el, annyi különbséggel, hogy egy beépülő tétel soha nem fog szerepelni, mint szülő és nem szükséges sok információ tárolása az alapanyagokról sem.
De valami még nem kerek. Így festenek a táblák:
CREATE TABLE `food_component_map`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`food_id` INTEGER NOT NULL,
`component_id` INTEGER NOT NULL,
PRIMARY KEY (`id`),
UNIQUE KEY `map_index` (`food_id`, `component_id`),
CONSTRAINT `food_component_map_FK_1`
FOREIGN KEY (`food_id`)
REFERENCES `food` (`id`),
INDEX `food_component_map_FI_2` (`component_id`),
CONSTRAINT `food_component_map_FK_2`
FOREIGN KEY (`component_id`)
REFERENCES `component` (`id`)
)Type=MyISAM;
CREATE TABLE `food`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`categories_id` INTEGER NOT NULL,
`nev` VARCHAR(100),
`leiras` LONGTEXT,
PRIMARY KEY (`id`),
INDEX `food_FI_1` (`categories_id`),
CONSTRAINT `food_FK_1`
FOREIGN KEY (`categories_id`)
REFERENCES `categories` (`id`)
)Type=MyISAM;
REATE TABLE `component`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`nev` VARCHAR(200),
`mertekegyseg` VARCHAR(20),
`leiras` LONGTEXT,
PRIMARY KEY (`id`)
)Type=MyISAM;
CREATE TABLE `categories`
(
`id` INTEGER NOT NULL AUTO_INCREMENT,
`nev` VARCHAR(100),
`leiras` LONGTEXT,
PRIMARY KEY (`id`)
)Type=MyISAM;
Egy dologgal még nem boldogulok. A mennyiségre, szóval azzal, hogy egy ételbe egy adott összetevőből mennyi kell. Ezt a food_component_map táblába kellene felvennem?
A programot a symfony keretrendszerrel csinálom, ami a propel -t használja az adatbázis séma kezeléséhez, ha ez számít.
Kaphatnék még egy kis segítséget?
_____________________________________________________________
Lógnak a pálmafán a kókuszok .... :)
http://laszlo.co.hu/