ciao a tutti,
sto cercando di creare una tabella in mysql ma mi da un problema quando cerco di definire una chiave esterna.
La tabella è di tipo InnoDB quindi dovrebbe funzionare e invece mi dice che non riesce a crearla (err 1005).
non capisco....
qualcuno sa dirmi come mai?
posto qui sotto il codice.
grazie mille

codice:
CREATE TABLE annunci (
  id				int(5)			NOT NULL,
  data			date 			NOT NULL 		default '0000-00-00',
  data_scadenza 	date 			NOT NULL 		default '0000-00-00',
  id_venditore		varchar(5) 		NOT NULL 		default '',
  id_agente		varchar(5) 					default NULL,
  venduto			int(1) 		NOT NULL 		default '0',
  tipologia 			varchar(50)	NOT NULL 		default '',
  metratura			int(3) 		NOT NULL 		default '0',
  condizioni 		varchar(50) 	NOT NULL 		default '',
  provincia 			varchar(100) 	NOT NULL 		default '',
  indirizzo 			varchar(100) 	NOT NULL 		default '',
  descrizione		text 			NOT NULL,
  prezzo			int(10) 		NOT NULL 		default '0',
  foto1 			varchar(20) 				default NULL,
  foto2			varchar(20) 				default NULL,
  foto3 			varchar(20) 				default NULL,
  foto4			varchar(20) 				default NULL,
  richieste 			int(6) 		NOT NULL 		default '0',

  PRIMARY KEY  (id),
  FOREIGN KEY (id_agente) REFERENCES utenti(id) ON DELETE {SET NULL}
) ENGINE=InnoDB;