Un altro esempio,
Ho la tabella ordine a cui vogli associare più articoli ed un solo cliente.
Inizio associando l'articolo(quantomeno ci provo)
codice:
CREATE TABLE SchemaNegozio.ConsegnaOrdine (
PK_CodiceOrdine varchar(30) NOT NULL PRIMARY KEY,
FK_CodiceArticolo varchar(30) NOT NULL,
DataConsegna date NOT NULL,
OraConsegna time NOT NULL,
CodiceSpedizioniere varchar(30) NOT NULL UNIQUE,
)
CREATE TABLE SchemaNegozio.Articolo (
PK_CodiceArticolo varchar(30) NOT NULL PRIMARY KEY FOREIGN KEY(PK_CodiceArticolo) REFERENCES SchemaNegozio.ConsegnaOrdine(FK_CodiceArticolo),
FK_DettagliArticolo varchar(30) NOT NULL,
Descrizione varchar(30) NOT NULL,
Peso int NOT NULL,
Larghezza int,
Lunghezza int,
Altezza int,
Prezzo float
)
Qui non mi crea la seconda tabella Articolo perché dice che la FK non è una Key primaria...
Dove erro?
Non uso direttamente la Primary Key:
codice:
PK_CodiceArticolo varchar(30) NOT NULL FOREIGN KEY(PK_CodiceArticolo) REFERENCES SchemaNegozio.ConsegnaOrdine(PK_CodiceOrdine),
Perchè dopo non potrei agganciarci il cliente all'ordine.