Hel
Hel

Reputation: 1

How can i add on delete cascade on update cascade in oracle?

error : ORA-00905: missing keyword

THE STATEMENT :

create table Register(
stdno char(5)  ,
courseId char(8)    ,
SemesterId char(5)  ,
mark decimal (4,2) check (mark between 0.00 and 100.00),

constraint fK_student foreign key (stdno) references student (stdno)on update cascade on delete cascade ,
constraint fK_course foreign key (courseId) references course (courseId)on update cascade on delete cascade ,
constraint fK_Semester foreign key (SemesterId) references Semester (SemesterId)on update cascade on delete cascade ,
constraint pK_Register primary key (stdno , courseid , SemesterId) 
 );

I am trying to use on delete cascade option on oracle but it gave me that error . Also i did the same thing on oracle live

Upvotes: 0

Views: 57

Answers (1)

Littlefoot
Littlefoot

Reputation: 142720

There's no ON UPDATE clause in Oracle. Without it:

SQL> CREATE TABLE Register
  2  (
  3     stdno        CHAR (5),
  4     courseId     CHAR (8),
  5     SemesterId   CHAR (5),
  6     mark         DECIMAL (4, 2) CHECK (mark BETWEEN 0.00 AND 100.00),
  7     CONSTRAINT fK_student FOREIGN KEY (stdno)
  8        REFERENCES student (stdno) ON DELETE CASCADE,
  9     CONSTRAINT fK_course FOREIGN KEY (courseId)
 10        REFERENCES course (courseId) ON DELETE CASCADE,
 11     CONSTRAINT fK_Semester FOREIGN KEY (SemesterId)
 12        REFERENCES Semester (SemesterId) ON DELETE CASCADE,
 13     CONSTRAINT pK_Register PRIMARY KEY (stdno, courseid, SemesterId)
 14  );

Table created.

SQL>

Upvotes: 1

Related Questions