Sto provando ad usare la clausola "on delete cascade" su due tabelle in modo da manterere i dati consistenti nel caso venisse cancellata una riga in una delle due tabelle.
La creazione delle tabelle l'ho fatta così:
codice:
create table Conto (
	numeroConto 	int	 	not null auto_increment,
	saldo		float(2)	default 0,
	primary key (numeroConto)
)
engine=innodb;

create table Possiede (
	Cliente		varchar(10)	primary key,
	Conto		int		not null auto_increment,
	Key (conto)
)
engine=innodb;


alter table conto add constraint possiede_delete foreign key (numeroconto) references possiede(conto) on delete cascade;
alter table possiede add constraint conto_delete foreign key (conto) references conto(numeroconto) on delete cascade;
Nel momento in cui provo ad inserire una riga nella tabella conto appare questo messaggio d'errore:
Cannot add or update a child row: a foreign key constraint fails (`ricettelastminute`.`conto`, CONSTRAINT `possiede_delete` FOREIGN KEY (`numeroConto`) REFERENCES `possiede` (`Conto`) ON DELETE CASCADE)
Cosa analoga se l'inserimento lo provo nella tabella possiede, cambia solo l'alter table che mi visualizza dopo "Cannot add or update a child row: a foreign key constraint fails".

Da cosa dipende? come faccio a far funzionare "on delete cascade"?