Many to many using a primary-key and foreign-key relationship : FOREIGN KEY « Table « Oracle PL/SQL Tutorial






SQL> CREATE TABLE Course
  2     (course_id        VARCHAR2(10) NOT NULL,
  3      course_name      VARCHAR2(20),
  4      PRIMARY KEY (course_id));

Table created.

SQL>
SQL> CREATE TABLE emp
  2     (stud_id    VARCHAR2(10) NOT NULL,
  3      stud_name  VARCHAR2(20),
  4      PRIMARY KEY (stud_id));

Table created.

SQL>
SQL> CREATE TABLE Enrolls_in
  2     (course_id  VARCHAR2(10) NOT NULL,
  3      stud_id    VARCHAR2(10) NOT NULL,
  4      PRIMARY KEY (course_id, stud_id),
  5      FOREIGN KEY (course_id) REFERENCES Course (course_id)
  6      ON DELETE CASCADE,
  7      FOREIGN KEY (stud_id) REFERENCES emp (stud_id)
  8      ON DELETE CASCADE);

Table created.

SQL>
SQL> drop table Course cascade constraints;

Table dropped.

SQL> drop table emp cascade constraints;

Table dropped.

SQL> drop table Enrolls_in;

Table dropped.

SQL>








6.16.FOREIGN KEY
6.16.1.Adding a FOREIGN KEY Constraint
6.16.2.ON DELETE CASCADE clause with a FOREIGN KEY constraint
6.16.3.Use the ON DELETE SET NULL clause with a FOREIGN KEY constraint
6.16.4.ORA-02298: cannot validate (JAVA2S.PRODUCT_ORDER_FK_PRODUCT) - parent keys not found
6.16.5.A foreign key to reference itself
6.16.6.ORA-02270: no matching unique or primary key for this column-list
6.16.7.Add constraint foreign key references
6.16.8.Violate a foreign key
6.16.9.Disable foreign key
6.16.10.Many to many using a primary-key and foreign-key relationship