PER CREARE UNA CHIAVE ESTERNA DEVI FARE COSI:

create table impianti
(
pv smallint(6) unsigned,
citta varchar(40),
provincia varchar(40),
regione varchar(40),
telefono1 int,
telefono2 int,
fax int,
mail varchar(40),
ditta varchar(10),
PRIMARY KEY(pv,ditta)
) TYPE=InnoDB;



create table gestori
(
rag_sociale varchar(40),
nome varchar(40),
cognome varchar(40),
id smallint(5) primary key auto_increment,
pv smallint(6) unsigned,
ditta varchar(10),
index(pv,ditta),
FOREIGN KEY(pv,ditta) REFERENCES impianti(pv,ditta)
ON DELETE SET NULL
ON UPDATE CASCADE
) TYPE=InnoDB;


questo è un esempio di 2 tabelle di uno script che ho fatto io, ma la sintassi è la stessa, basta cambiare i nomi dei campi