Bene. Il concetto è semplice. Devo infatti modificare una tabella pre-esistente e non vuota(motore=Innodb)aggiungendo un vincolo referenziale con chiave esterna verso una tabella da me creata.
allora, la tabella creata da me è questa (alla quale la seconda fa riferimento):
Codice: Seleziona tutto
CREATE TABLE Filiali(
Nro_filiale CHAR(1) PRIMARY KEY,
Nome_filiale CHAR(20),
Sede_filiale CHAR(20),
Nro_dipendenti INTEGER
)TYPE=INNODB;Codice: Seleziona tutto
CREATE TABLE Scorte(
Codice_libro CHAR(4) REFERENCES Libri(Codice_libro),
Nro_filiale CHAR(1),
Nro_copie_disponibili DECIMAL(1,0) DEFAULT 0,
Data_controllo DATE,
PRIMARY KEY(Codice_libro, Nro_filiale)
) TYPE=INNODB;Io dò questo comando:
Codice: Seleziona tutto
ALTER TABLE Scorte ADD CONSTRAINT FOREIGN KEY (Nro_filiale) REFERENCES Filiali(Nro_filiale);Codice: Seleziona tutto
ERROR 1005 (HY000): Can't create table 'HenrysBooksDB090202_1.#sql-59f_2a' (errno: 150)Bene. Non so che pesi pigliare...Illuminatemi!!
