Primeiro, no Oracle, não há
ON UPDATE RESTRICT
ou ON DELETE RESTRICT
opção. Eles parecem ser válidos em outros mecanismos de banco de dados, mas não estão presentes no diagrama de sintaxe de restrição
e não parecem ser válidas. Existe um ON DELETE
mas as duas únicas opções válidas são CASCADE
ou SET NULL
. Não há ON UPDATE
cláusula. Se adicionarmos uma vírgula no final do
airplane_id
definição antes da definição da restrição e remova as duas cláusulas inválidas, seu DDL deve ser válido CREATE TABLE Flight (
flight_no varchar2(10) NOT NULL,
airplane_id varchar2(20) NOT NULL,
CONSTRAINT flight_airplane_id_fk
FOREIGN KEY (airplane_id) REFERENCES Airplane (airplane_id),
dept_date date NOT NULL,
<<more columns>>
);