Salve a tutti. Ho una tabella con dentro 2 dati che sono foreign key di altre 2 tabelle. Come faccio a fare la foreign key? Ma devo usare anche INDEX, cos è?


Ho fatto così:

codice:
CREATE TABLE `Vendita` (   `id_vendita` integer unsigned NOT NULL auto_increment,   
`libro` integer unsigned NOT NULL,   
`seller` integer unsigned NOT NULL,   
`prezzo` double unsigned NOT NULL,   
`commento` varchar(200),   
`isbn` integer NOT NULL,   
`data` date NOT NULL,   
`edizione` integer,   
`lingua` integer unsigned NOT NULL,  
 `condizione` integer unsigned NOT NULL,   
`eta` integer unsigned NOT NULL,   
`formato` integer unsigned NOT NULL,   
`copertina` integer unsigned,   
`soggetto` integer unsigned,   
PRIMARY KEY  (`id_vendita`),  
FOREIGN KEY (libro) REFERENCES Book(id_book)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (seller) REFERENCES Seller(id_seller)     ON DELETE CASCADE     ON UPDATE CASCADE, 
FOREIGN KEY (lingua) REFERENCES Language(id_language)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (condizione) REFERENCES Condition(id_condition)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (eta) REFERENCES Age(id_age)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (formato) REFERENCES Format(id_format)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (copertina) REFERENCES Binding(id_binding)     ON DELETE CASCADE     ON UPDATE CASCADE,  
FOREIGN KEY (soggetto) REFERENCES Subject(id_subject)     ON DELETE CASCADE     ON UPDATE CASCADE )
Mi da errore purtroppo e non so perchè...chi mi aiuta???