2013-05-22 2 views
-1

У меня есть две таблицы, как показано нижеOracle SQL Alter Table

CREATE TABLE "CLIENT" 
("ID" NUMBER(*,0) NOT NULL ENABLE, 
"FIRSTNAME" VARCHAR2(255 CHAR), 
"LASTNAME" VARCHAR2(255 CHAR), 
"TELEPHONE" VARCHAR2(255 CHAR), 
CONSTRAINT "CLIENT_PK" PRIMARY KEY ("ID")) 

CREATE TABLE "BCR"."RESERVATION" 
("ID" NUMBER(*,0) NOT NULL ENABLE, 
"MYDATE" DATE, 
"USERS_ID" NUMBER(*,0) NOT NULL ENABLE, 
"CLIENT_ID" NUMBER(*,0), 
CONSTRAINT "RESERVATION_PK" PRIMARY KEY ("ID"), 
CONSTRAINT "RESERVATION_USER_FK" FOREIGN KEY ("USERS_ID") 
REFERENCES "USERS" ("ID")) 

мне нужно изменить таблицу, используя этот код (я хочу добавить ON DELETE CASCADE)

ALTER TABLE "RESERVATION" 
ADD CONSTRAINT "RESERVATION_CLIENT_FK" 
FOREIGN KEY ("CLIENT_ID") 
REFERENCES "CLIENT" CONSTRAINT "CLIENT_PK" PRIMARY KEY ("ID") 
ON DELETE CASCADE; 

Однако получить эту ошибку

SQL Error: ORA-01735: invalid ALTER TABLE option 

Любые идеи?

ответ

2

попробовать этот код

ALTER TABLE "RESERVATION" 
ADD CONSTRAINT "RESERVATION_CLIENT_FK" 
FOREIGN KEY ("CLIENT_ID") 
REFERENCES "CLIENT" ("ID") 
ON DELETE CASCADE; 

Вот ссылка на документацию Oracle, на constraint для справки

+0

Спасибо! оно работает! – user2363971

+0

Отлично. Рад был помочь. –