Ciao a tutti... help me!!!!!!
Ho le seguenti tabelle:
CREATE TABLE tutor
( ID INT(6) UNSIGNED ZEROFILL DEFAULT '0' PRIMARY KEY,
nome char(20) NOT NULL,
cognome char(20) NOT NULL,
data_di_nascita DATE NOT NULL,
luogo_di_nascita char(20),
ruolo ENUM('mamma','papà','altro'),
email VARCHAR(60),
UNIQUE(nome, cognome, data_di_nascita) ) TYPE=INNODB;
CREATE TABLE bambino
( ID INT(6) UNSIGNED ZEROFILL AUTO_INCREMENT PRIMARY KEY,
nome char(20) NOT NULL,
cognome char(20) NOT NULL,
data_di_nascita DATE NOT NULL,
luogo_di_nascita char(20) NOT NULL,
comune_di_residenza char(20),
indirizzo varchar(60),
UNIQUE(nome,cognome,data_di_nascita) ) TYPE=INNODB;
CREATE TABLE veci
( id_b INT(6) UNSIGNED ZEROFILL AUTO_INCREMENT,
id_t INT(6) UNSIGNED ZEROFILL DEFAULT '0',
PRIMARY KEY (id_b, id_t),
FOREIGN KEY (id_b) REFERENCES bambino(ID) ON DELETE CASCADE ON UPDATE CASCADE,
FOREIGN KEY (id_t) REFERENCES tutor(ID) ON DELETE SET DEFAULT ON UPDATE CASCADE ) TYPE=INNODB;
Purtroppo non riesco a creare la tabella veci perchè compare:
Can't create table '.\registro_scuola\veci.frm' (errno: 150)
Ho guardato le altre discussioni e il mio sospetto ricade sul fatto che la primary key lega i due campi, ma purtroppo non posso legarli anche con un'unica foreign key perchè appartengono a 2 tabelle diverse.. non so, potrebbe anche non essere questo il problema..
Vi prego aiutatemi!!!!