<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
		<id>http://www.sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL%2FConstraints%2FAdd_Foreign_Key</id>
		<title>Oracle PL/SQL/Constraints/Add Foreign Key - История изменений</title>
		<link rel="self" type="application/atom+xml" href="http://www.sqle.ru/index.php?action=history&amp;feed=atom&amp;title=Oracle_PL%2FSQL%2FConstraints%2FAdd_Foreign_Key"/>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL/Constraints/Add_Foreign_Key&amp;action=history"/>
		<updated>2026-05-26T20:55:45Z</updated>
		<subtitle>История изменений этой страницы в вики</subtitle>
		<generator>MediaWiki 1.30.0</generator>

	<entry>
		<id>http://www.sqle.ru/index.php?title=Oracle_PL/SQL/Constraints/Add_Foreign_Key&amp;diff=2536&amp;oldid=prev</id>
		<title> в 13:45, 26 мая 2010</title>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL/Constraints/Add_Foreign_Key&amp;diff=2536&amp;oldid=prev"/>
				<updated>2010-05-26T13:45:19Z</updated>
		
		<summary type="html">&lt;p&gt;&lt;/p&gt;
&lt;table class=&quot;diff diff-contentalign-left&quot; data-mw=&quot;interface&quot;&gt;
				&lt;tr style=&quot;vertical-align: top;&quot; lang=&quot;ru&quot;&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;← Предыдущая&lt;/td&gt;
				&lt;td colspan=&quot;1&quot; style=&quot;background-color: white; color:black; text-align: center;&quot;&gt;Версия 13:45, 26 мая 2010&lt;/td&gt;
				&lt;/tr&gt;&lt;tr&gt;&lt;td colspan=&quot;2&quot; style=&quot;text-align: center;&quot; lang=&quot;ru&quot;&gt;&lt;div class=&quot;mw-diff-empty&quot;&gt;(нет различий)&lt;/div&gt;
&lt;/td&gt;&lt;/tr&gt;&lt;/table&gt;</summary>
			</entry>

	<entry>
		<id>http://www.sqle.ru/index.php?title=Oracle_PL/SQL/Constraints/Add_Foreign_Key&amp;diff=2537&amp;oldid=prev</id>
		<title>Admin: 1 версия</title>
		<link rel="alternate" type="text/html" href="http://www.sqle.ru/index.php?title=Oracle_PL/SQL/Constraints/Add_Foreign_Key&amp;diff=2537&amp;oldid=prev"/>
				<updated>2010-05-26T10:01:54Z</updated>
		
		<summary type="html">&lt;p&gt;1 версия&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;==Add Foreign Primary Key==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
  &lt;br /&gt;
SQL&amp;gt; CREATE TABLE Employee(Employee_ID NUMBER(4) NOT NULL,&lt;br /&gt;
  2                   Employee_Name VARCHAR2(10),&lt;br /&gt;
  3                   JOB VARCHAR2(9),&lt;br /&gt;
  4                   Manager_ID NUMBER(4),&lt;br /&gt;
  5                   Start_Date DATE,&lt;br /&gt;
  6                   Salary NUMBER(7, 2),&lt;br /&gt;
  7                   COMM NUMBER(7, 2),&lt;br /&gt;
  8                   Deparment_ID NUMBER(2)&lt;br /&gt;
  9  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7369, &amp;quot;SMITH&amp;quot;,  &amp;quot;CLERK&amp;quot;,     7902, TO_DATE(&amp;quot;17-DEC-1980&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  800, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7499, &amp;quot;ALLEN&amp;quot;,  &amp;quot;SALESMAN&amp;quot;,  7698, TO_DATE(&amp;quot;20-FEB-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1600,  300, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7521, &amp;quot;WARD&amp;quot;,   &amp;quot;SALESMAN&amp;quot;,  7698, TO_DATE(&amp;quot;22-FEB-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1250,  500, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7566, &amp;quot;JONES&amp;quot;,  &amp;quot;MANAGER&amp;quot;,   7839, TO_DATE(&amp;quot;2-APR-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  2975, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7654, &amp;quot;MARTIN&amp;quot;, &amp;quot;SALESMAN&amp;quot;,  7698, TO_DATE(&amp;quot;28-SEP-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1250, 1400, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7698, &amp;quot;BLAKE&amp;quot;,  &amp;quot;MANAGER&amp;quot;,   7839, TO_DATE(&amp;quot;1-MAY-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  2850, NULL, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7782, &amp;quot;CLARK&amp;quot;,  &amp;quot;MANAGER&amp;quot;,   7839, TO_DATE(&amp;quot;9-JUN-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  2450, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7788, &amp;quot;SCOTT&amp;quot;,  &amp;quot;ANALYST&amp;quot;,   7566, TO_DATE(&amp;quot;09-DEC-1982&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 3000, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7839, &amp;quot;KING&amp;quot;,   &amp;quot;PRESIDENT&amp;quot;, NULL, TO_DATE(&amp;quot;17-NOV-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 5000, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7844, &amp;quot;TURNER&amp;quot;, &amp;quot;SALESMAN&amp;quot;,  7698, TO_DATE(&amp;quot;8-SEP-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  1500,    0, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7876, &amp;quot;ADAMS&amp;quot;,  &amp;quot;CLERK&amp;quot;,     7788, TO_DATE(&amp;quot;12-JAN-1983&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1100, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7900, &amp;quot;JAMES&amp;quot;,  &amp;quot;CLERK&amp;quot;,     7698, TO_DATE(&amp;quot;3-DEC-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),   950, NULL, 30);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7902, &amp;quot;FORD&amp;quot;,   &amp;quot;ANALYST&amp;quot;,   7566, TO_DATE(&amp;quot;3-DEC-1981&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;),  3000, NULL, 20);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Employee VALUES (7934, &amp;quot;MILLER&amp;quot;, &amp;quot;CLERK&amp;quot;,     7782, TO_DATE(&amp;quot;23-JAN-1982&amp;quot;, &amp;quot;DD-MON-YYYY&amp;quot;), 1300, NULL, 10);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE Department(Deparment_ID NUMBER(2),&lt;br /&gt;
  2                          Department_Name VARCHAR2(14),&lt;br /&gt;
  3                          Location VARCHAR2(13)&lt;br /&gt;
  4  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; INSERT INTO Department VALUES (10, &amp;quot;ACCOUNTING&amp;quot;, &amp;quot;NEW YORK&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Department VALUES (20, &amp;quot;RESEARCH&amp;quot;,   &amp;quot;DALLAS&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Department VALUES (30, &amp;quot;SALES&amp;quot;,      &amp;quot;CHICAGO&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt; INSERT INTO Department VALUES (40, &amp;quot;OPERATIONS&amp;quot;, &amp;quot;BOSTON&amp;quot;);&lt;br /&gt;
1 row created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; alter table Employee add constraint Employee_pk primary key(Employee_ID);&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt; alter table Department add constraint Department_pk primary key(Deparment_ID);&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt; alter table Employee add constraint Employee_fk_Department foreign key(Deparment_ID) references Department;&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt; alter table Employee add constraint Employee_fk_Employee foreign key(Manager_ID) references Employee;&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; select * from Employee;&lt;br /&gt;
EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID&lt;br /&gt;
----------- ---------- --------- ---------- --------- ---------- ---------- ------------&lt;br /&gt;
       7369 SMITH      CLERK           7902 17-DEC-80        800                      20&lt;br /&gt;
       7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300           30&lt;br /&gt;
       7521 WARD       SALESMAN        7698 22-FEB-81       1250        500           30&lt;br /&gt;
       7566 JONES      MANAGER         7839 02-APR-81       2975                      20&lt;br /&gt;
       7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400           30&lt;br /&gt;
       7698 BLAKE      MANAGER         7839 01-MAY-81       2850                      30&lt;br /&gt;
       7782 CLARK      MANAGER         7839 09-JUN-81       2450                      10&lt;br /&gt;
       7788 SCOTT      ANALYST         7566 09-DEC-82       3000                      20&lt;br /&gt;
       7839 KING       PRESIDENT            17-NOV-81       5000                      10&lt;br /&gt;
       7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0           30&lt;br /&gt;
       7876 ADAMS      CLERK           7788 12-JAN-83       1100                      20&lt;br /&gt;
EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID&lt;br /&gt;
----------- ---------- --------- ---------- --------- ---------- ---------- ------------&lt;br /&gt;
       7900 JAMES      CLERK           7698 03-DEC-81        950                      30&lt;br /&gt;
       7902 FORD       ANALYST         7566 03-DEC-81       3000                      20&lt;br /&gt;
       7934 MILLER     CLERK           7782 23-JAN-82       1300                      10&lt;br /&gt;
14 rows selected.&lt;br /&gt;
SQL&amp;gt; select * from Department;&lt;br /&gt;
DEPARMENT_ID DEPARTMENT_NAM LOCATION&lt;br /&gt;
------------ -------------- -------------&lt;br /&gt;
          10 ACCOUNTING     NEW YORK&lt;br /&gt;
          20 RESEARCH       DALLAS&lt;br /&gt;
          30 SALES          CHICAGO&lt;br /&gt;
          40 OPERATIONS     BOSTON&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; -- Using table aliases in joins&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; SELECT e.Employee_ID, e.Start_Date,&lt;br /&gt;
  2         e.Employee_Name,d.Department_Name, d.Location&lt;br /&gt;
  3  FROM Employee e, Department d&lt;br /&gt;
  4  WHERE d.Deparment_ID = e.Deparment_ID;&lt;br /&gt;
EMPLOYEE_ID START_DAT EMPLOYEE_N DEPARTMENT_NAM LOCATION&lt;br /&gt;
----------- --------- ---------- -------------- -------------&lt;br /&gt;
       7369 17-DEC-80 SMITH      RESEARCH       DALLAS&lt;br /&gt;
       7499 20-FEB-81 ALLEN      SALES          CHICAGO&lt;br /&gt;
       7521 22-FEB-81 WARD       SALES          CHICAGO&lt;br /&gt;
       7566 02-APR-81 JONES      RESEARCH       DALLAS&lt;br /&gt;
       7654 28-SEP-81 MARTIN     SALES          CHICAGO&lt;br /&gt;
       7698 01-MAY-81 BLAKE      SALES          CHICAGO&lt;br /&gt;
       7782 09-JUN-81 CLARK      ACCOUNTING     NEW YORK&lt;br /&gt;
       7788 09-DEC-82 SCOTT      RESEARCH       DALLAS&lt;br /&gt;
       7839 17-NOV-81 KING       ACCOUNTING     NEW YORK&lt;br /&gt;
       7844 08-SEP-81 TURNER     SALES          CHICAGO&lt;br /&gt;
       7876 12-JAN-83 ADAMS      RESEARCH       DALLAS&lt;br /&gt;
EMPLOYEE_ID START_DAT EMPLOYEE_N DEPARTMENT_NAM LOCATION&lt;br /&gt;
----------- --------- ---------- -------------- -------------&lt;br /&gt;
       7900 03-DEC-81 JAMES      SALES          CHICAGO&lt;br /&gt;
       7902 03-DEC-81 FORD       RESEARCH       DALLAS&lt;br /&gt;
       7934 23-JAN-82 MILLER     ACCOUNTING     NEW YORK&lt;br /&gt;
14 rows selected.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table Department cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table Employee cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
           &lt;br /&gt;
         &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Alter table to add primary key and alter another table to add foreign key==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table subjects (&lt;br /&gt;
  2  subject_id    number not null,&lt;br /&gt;
  3  subject_name  varchar2(30) not null,&lt;br /&gt;
  4  description   varchar2(4000)&lt;br /&gt;
  5  )&lt;br /&gt;
  6  tablespace users;&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; alter table subjects&lt;br /&gt;
  2  add constraint pk_subjects primary key (subject_id);&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; create table courses (&lt;br /&gt;
  2  course_id   number not null,&lt;br /&gt;
  3  course_name varchar2(60) not null,&lt;br /&gt;
  4  subject_id  number not null,&lt;br /&gt;
  5  duration    number(2),&lt;br /&gt;
  6  skill_lvl   varchar2(12) not null&lt;br /&gt;
  7  )&lt;br /&gt;
  8  tablespace users;&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; alter table courses&lt;br /&gt;
  2  add constraint pk_courses&lt;br /&gt;
  3  primary key (course_id);&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; alter table courses&lt;br /&gt;
  2  add constraint fk_course_subj&lt;br /&gt;
  3  foreign key (subject_id) references subjects (subject_id);&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; alter table courses&lt;br /&gt;
  2  add constraint ck_level check(&lt;br /&gt;
  3  skill_lvl in (&amp;quot;BEGINNER&amp;quot;, &amp;quot;INTERMEDIATE&amp;quot;, &amp;quot;ADVANCED&amp;quot;)&lt;br /&gt;
  4  );&lt;br /&gt;
Table altered.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table courses cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table subjects cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Many to many using a primary-key and foreign-key relationship==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
SQL&amp;gt; CREATE TABLE Course&lt;br /&gt;
  2     (course_id        VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3      course_name      VARCHAR2(20),&lt;br /&gt;
  4      PRIMARY KEY (course_id));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE emp&lt;br /&gt;
  2     (stud_id    VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3      stud_name  VARCHAR2(20),&lt;br /&gt;
  4      PRIMARY KEY (stud_id));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE Enrolls_in&lt;br /&gt;
  2     (course_id  VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3      stud_id    VARCHAR2(10) NOT NULL,&lt;br /&gt;
  4      PRIMARY KEY (course_id, stud_id),&lt;br /&gt;
  5      FOREIGN KEY (course_id) REFERENCES Course (course_id)&lt;br /&gt;
  6      ON DELETE CASCADE,&lt;br /&gt;
  7      FOREIGN KEY (stud_id) REFERENCES emp (stud_id)&lt;br /&gt;
  8      ON DELETE CASCADE);&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table Course cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table emp cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table Enrolls_in;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==One to many using a primary-key and foreign-key relationship==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE Programmer&lt;br /&gt;
  2     (lect_id    VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3      lect_name  VARCHAR2(20),&lt;br /&gt;
  4      PRIMARY KEY (lect_id));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE Course&lt;br /&gt;
  2     (course_id        VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3      course_name      VARCHAR2(20),&lt;br /&gt;
  4      lect_id          VARCHAR(10),&lt;br /&gt;
  5      PRIMARY KEY (course_id),&lt;br /&gt;
  6      FOREIGN KEY (lect_id) REFERENCES Programmer (lect_id)&lt;br /&gt;
  7      ON DELETE CASCADE);&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table Programmer cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table Course cascade constraints;&lt;br /&gt;
Table dropped.&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==syntax to reference foreign key==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; --CREATE TABLE &amp;lt;table schema&amp;gt; OF &amp;lt;object schema&amp;gt;&lt;br /&gt;
SQL&amp;gt; --   (key attribute    NOT NULL,&lt;br /&gt;
SQL&amp;gt; --    attribute        attribute type,&lt;br /&gt;
SQL&amp;gt; --    PRIMARY KEY      (key attribute),&lt;br /&gt;
SQL&amp;gt; --    FOREIGN KEY      (key attribute)&lt;br /&gt;
SQL&amp;gt; --    REFERENCES &amp;lt;referenced table schema&amp;gt;(key attribute)&lt;br /&gt;
SQL&amp;gt; --    [ON DELETE][CASCADE|SET NULL]);&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; --Example:&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE emp&lt;br /&gt;
  2      (id         VARCHAR2(10) NOT NULL,&lt;br /&gt;
  3       course     VARCHAR2(10),&lt;br /&gt;
  4       year       VARCHAR2(4),&lt;br /&gt;
  5       PRIMARY KEY (id),&lt;br /&gt;
  6       FOREIGN KEY (id) REFERENCES Person ON DELETE CASCADE);&lt;br /&gt;
&lt;br /&gt;
SQL&amp;gt;     FOREIGN KEY (id) REFERENCES Person ON DELETE CASCADE)&lt;br /&gt;
SP2-0734: unknown command beginning &amp;quot;FOREIGN KE...&amp;quot; - rest of line ignored.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
   &lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
==Three foreign keys in a table==&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
   &lt;br /&gt;
  &amp;lt;!-- start source code --&amp;gt;&lt;br /&gt;
   &lt;br /&gt;
    &amp;lt;source lang=&amp;quot;sql&amp;quot;&amp;gt;&lt;br /&gt;
    &lt;br /&gt;
SQL&amp;gt; CREATE TABLE store (&lt;br /&gt;
  2    store_id VARCHAR2(12) CONSTRAINT store_pk PRIMARY KEY,&lt;br /&gt;
  3    store_name VARCHAR2(15),&lt;br /&gt;
  4    city VARCHAR2(25),&lt;br /&gt;
  5    state VARCHAR2(2),&lt;br /&gt;
  6    region VARCHAR2(2),&lt;br /&gt;
  7    zip VARCHAR2(5));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE pc (&lt;br /&gt;
  2    pc_id VARCHAR2(12) CONSTRAINT prod_pk PRIMARY KEY,&lt;br /&gt;
  3    prod_desc VARCHAR2(15),&lt;br /&gt;
  4    upc NUMBER,&lt;br /&gt;
  5    brand VARCHAR2(12),&lt;br /&gt;
  6    category VARCHAR2(12),&lt;br /&gt;
  7    department VARCHAR2(12));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE promotion (&lt;br /&gt;
  2    promo_id varchar2(12) CONSTRAINT promo_pk PRIMARY KEY,&lt;br /&gt;
  3    promo_name varchar2(15),&lt;br /&gt;
  4    promo_type varchar2(12));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE FinancialYear (&lt;br /&gt;
  2    time_id DATE CONSTRAINT time_pk PRIMARY KEY,&lt;br /&gt;
  3    month NUMBER,&lt;br /&gt;
  4    quarter NUMBER,&lt;br /&gt;
  5    year NUMBER,&lt;br /&gt;
  6    season VARCHAR2(12));&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; CREATE TABLE SALES (&lt;br /&gt;
  2    time_id DATE NOT NULL CONSTRAINT time_fk             REFERENCES FinancialYear(time_id),&lt;br /&gt;
  3    store_id VARCHAR2(12) NOT NULL CONSTRAINT store_fk   REFERENCES store(store_id),&lt;br /&gt;
  4    pc_id VARCHAR2(12)  NOT NULL,&lt;br /&gt;
  5    promo_id VARCHAR2(12) NOT NULL CONSTRAINT promo_fk   REFERENCES promotion(promo_id),&lt;br /&gt;
  6    units NUMBER,&lt;br /&gt;
  7    dollars NUMBER,&lt;br /&gt;
  8    cost NUMBER,&lt;br /&gt;
  9    CONSTRAINT sales_pk PRIMARY KEY (time_id, store_id, pc_id, promo_id)&lt;br /&gt;
 10  );&lt;br /&gt;
Table created.&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt;&lt;br /&gt;
SQL&amp;gt; drop table sales;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table FinancialYear;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table promotion;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table pc;&lt;br /&gt;
Table dropped.&lt;br /&gt;
SQL&amp;gt; drop table store;&lt;br /&gt;
Table dropped.&lt;br /&gt;
   &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
    &lt;br /&gt;
  &amp;lt;/source&amp;gt;&lt;/div&gt;</summary>
		<author><name>Admin</name></author>	</entry>

	</feed>