Ciao a tutti sto studiando il linguaggio sql da un manuale della jackson libri; Il libro fà riferimento al codice di tre db.
Ho provato il seguente codice sql per access:
CREATE TABLE Orders
(orderid INTEGER,
empid INTEGER CONSTRAINT tblSalespersonsFK REFERENCES Salespersons,
custid INTER CONSTRAINT tblCustomersFK REFERENCES Customers,
salesdate DATETIME,
partid INTEGER CONSTRAINT REFERENCES Inventory,
qty INTEGER,
CONSTRAINT PrimaryKey PRIMARY KEY (orderid, empid,custid));
Scritto così quando vado ad eseguirlo mi dà errore di sintassi "partid INTEGER CONSTRAINT REFERENCES Inventory" sottolineandomi REFERENCES.
Aggiungendo un nome accanto a CONSTRAINT non mi genera più l'errore.
Domande:
1) Ha sbagliato il libro?
2) Perchè si aggiunge un nome accanto a CONSTRAINT? Questo nome dove compare nella tabella? Ad esempio CONSTRAINT tblCustomersFK dove compare? Nel libro non è spiegato.....
3) Se si dichiara CONSTRAINT ho notato che se lascio il campo NULL non mi dà l'errore e da quanto ho letto il vincolo CONSTRAINT dovrebbe richiedere un valore per forza come mai?