Non è necessario creare prima la tabella e quindi aggiungere le chiavi nei passaggi successivi. È possibile aggiungere sia la chiave primaria che la chiave esterna durante la creazione della tabella:
Questo esempio presuppone l'esistenza di una tabella (Codes
) che vorremmo fare riferimento alla nostra chiave esterna.
CREATE TABLE d (
id [numeric](1),
code [varchar](2),
PRIMARY KEY (id, code),
CONSTRAINT fk_d_codes FOREIGN KEY (code) REFERENCES Codes (code)
)
Se non si dispone di una tabella che siamo in grado di fare riferimento, aggiungere uno come questo in modo che l'esempio funziona:
CREATE TABLE Codes (
Code [varchar](2) PRIMARY KEY
)
NOTA: è necessario disporre di un tavolo per fare riferimento prima di creando la chiave esterna.
fonte
2013-09-02 21:27:20
cREATE tABLE TR (ID numerico (1), varchar bin (10)) alter table tr aggiungere vincolo pk_id chiave primaria (id, bin) sua non ha funzionato perché – Domnic
Sir sua lavorato grazie – Domnic
@simonn: solo curioso, non posso ch eck adesso, ma il NOT NULL per le colonne è implicito oppure è necessario aggiungerli alle definizioni delle colonne? – Thilo