Ciao a tutti sono nuovo di mysql..........................sto facendo un progetto e quindi sto creando delle tabelle solo che ricevo il seguente errore:

1005 (HY000): Can't create table 'webutilities.Gruppi' (errno: 150)

In precedenza avevo già creato delle tabelle e le avevo popolate:

codice:
CREATE TABLE IF NOT EXISTS UtentiR( 	
	EmailR varchar(50) PRIMARY KEY,
	Nome char(30),
	Cognome char(30),
	Data date,
	Sesso char(1),
	Password varchar(12) not null,
	Ut varchar(2),
	Administrator varchar(2)
) ENGINE=INNODB;


CREATE TABLE IF NOT EXISTS Rubriche( 	
	id_Num int not null AUTO_INCREMENT,	
	UtenteR	varchar(50),
	Rubrica varchar(20),	
	EmailC varchar(50),	
	Nome char(30),
	Cognome char(30),
	Telefono varchar(15),
	Cellulare varchar(15),
	Fax varchar(15),
	Citta varchar(30),	
	Indirizzo varchar(30),
	SitoWeb varchar(100),
	Visibilita char(15) not null,
	UNIQUE(id_Num),	
	PRIMARY KEY(UtenteR,Rubrica,EmailC),
	INDEX Ind_Autore(UtenteR),
	FOREIGN KEY(UtenteR) REFERENCES UtentiR(EmailR) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=INNODB;
adesso mi servirebe un altra tabella la seguente:

codice:
CREATE TABLE IF NOT EXISTS Gruppi(
	
	id_Contact int,
	Rubrica varchar(20),
	ut_associato varchar(50),
	PRIMARY KEY(id_Contact, Rubrica, ut_associato),
	FOREIGN KEY(id_Contact) REFERENCES Rubriche (id_Num),
	FOREIGN KEY(Rubrica) REFERENCES Rubriche (Rubrica),	
	FOREIGN KEY(ut_associato) REFERENCES UtentiR (EmailR) ON DELETE CASCADE ON UPDATE CASCADE
) ENGINE=INNODB;
ma non mi permette di crearla mi mostra il messaggio citato sopra

Qualcuno può darmi una spiegazione e se possibile una soluzione?