Add Foreign key Demo : Foreign Key « Constraints « Oracle PL / SQL

Oracle PL / SQL
1. Aggregate Functions
2. Analytical Functions
3. Char Functions
4. Constraints
5. Conversion Functions
6. Cursor
7. Data Type
8. Date Timezone
9. Hierarchical Query
10. Index
11. Insert Delete Update
12. Large Objects
13. Numeric Math Functions
14. Object Oriented Database
15. PL SQL
16. Regular Expressions
17. Report Column Page
18. Result Set
19. Select Query
20. Sequence
21. SQL Plus
22. Stored Procedure Function
23. Subquery
24. System Packages
25. System Tables Views
26. Table
27. Table Joins
28. Trigger
29. User Previliege
30. View
31. XML
Java
Java Tutorial
Java Source Code / Java Documentation
Java Open Source
Jar File Download
Java Articles
Java Products
Java by API
Photoshop Tutorials
Maya Tutorials
Flash Tutorials
3ds-Max Tutorials
Illustrator Tutorials
GIMP Tutorials
C# / C Sharp
C# / CSharp Tutorial
C# / CSharp Open Source
ASP.Net
ASP.NET Tutorial
JavaScript DHTML
JavaScript Tutorial
JavaScript Reference
HTML / CSS
HTML CSS Reference
C / ANSI-C
C Tutorial
C++
C++ Tutorial
Ruby
PHP
Python
Python Tutorial
Python Open Source
SQL Server / T-SQL
SQL Server / T-SQL Tutorial
Oracle PL/SQL Tutorial
PostgreSQL
SQL / MySQL
MySQL Tutorial
VB.Net
VB.Net Tutorial
Flash / Flex / ActionScript
VBA / Excel / Access / Word
XML
XML Tutorial
Microsoft Office PowerPoint 2007 Tutorial
Microsoft Office Excel 2007 Tutorial
Microsoft Office Word 2007 Tutorial
Oracle PL / SQL » Constraints » Foreign Key 
Add Foreign key Demo



SQL> CREATE TABLE Employee(Employee_ID NUMBER(4NOT NULL,
  2                   Employee_Name VARCHAR2(10),
  3                   JOB VARCHAR2(9),
  4                   Manager_ID NUMBER(4),
  5                   Start_Date DATE,
  6                   Salary NUMBER(72),
  7                   COMM NUMBER(72),
  8                   Deparment_ID NUMBER(2)
  9  );

Table created.

SQL>
SQL> INSERT INTO Employee VALUES (7369'SMITH',  'CLERK',     7902, TO_DATE('17-DEC-1980', 'DD-MON-YYYY'),  800, NULL, 20);

row created.

SQL> INSERT INTO Employee VALUES (7499'ALLEN',  'SALESMAN',  7698, TO_DATE('20-FEB-1981', 'DD-MON-YYYY'), 1600,  30030);

row created.

SQL> INSERT INTO Employee VALUES (7521'WARD',   'SALESMAN',  7698, TO_DATE('22-FEB-1981', 'DD-MON-YYYY'), 1250,  50030);

row created.

SQL> INSERT INTO Employee VALUES (7566'JONES',  'MANAGER',   7839, TO_DATE('2-APR-1981', 'DD-MON-YYYY'),  2975, NULL, 20);

row created.

SQL> INSERT INTO Employee VALUES (7654'MARTIN', 'SALESMAN',  7698, TO_DATE('28-SEP-1981', 'DD-MON-YYYY'), 1250140030);

row created.

SQL> INSERT INTO Employee VALUES (7698'BLAKE',  'MANAGER',   7839, TO_DATE('1-MAY-1981', 'DD-MON-YYYY'),  2850, NULL, 30);

row created.

SQL> INSERT INTO Employee VALUES (7782'CLARK',  'MANAGER',   7839, TO_DATE('9-JUN-1981', 'DD-MON-YYYY'),  2450, NULL, 10);

row created.

SQL> INSERT INTO Employee VALUES (7788'SCOTT',  'ANALYST',   7566, TO_DATE('09-DEC-1982', 'DD-MON-YYYY'), 3000, NULL, 20);

row created.

SQL> INSERT INTO Employee VALUES (7839'KING',   'PRESIDENT', NULL, TO_DATE('17-NOV-1981', 'DD-MON-YYYY'), 5000, NULL, 10);

row created.

SQL> INSERT INTO Employee VALUES (7844'TURNER', 'SALESMAN',  7698, TO_DATE('8-SEP-1981', 'DD-MON-YYYY'),  1500,    030);

row created.

SQL> INSERT INTO Employee VALUES (7876'ADAMS',  'CLERK',     7788, TO_DATE('12-JAN-1983', 'DD-MON-YYYY'), 1100, NULL, 20);

row created.

SQL> INSERT INTO Employee VALUES (7900'JAMES',  'CLERK',     7698, TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),   950, NULL, 30);

row created.

SQL> INSERT INTO Employee VALUES (7902'FORD',   'ANALYST',   7566, TO_DATE('3-DEC-1981', 'DD-MON-YYYY'),  3000, NULL, 20);

row created.

SQL> INSERT INTO Employee VALUES (7934'MILLER', 'CLERK',     7782, TO_DATE('23-JAN-1982', 'DD-MON-YYYY'), 1300, NULL, 10);

row created.

SQL>
SQL> CREATE TABLE Department(Deparment_ID NUMBER(2),
  2                          Department_Name VARCHAR2(14),
  3                          Location VARCHAR2(13)
  4  );

Table created.

SQL>
SQL> INSERT INTO Department VALUES (10'ACCOUNTING', 'NEW YORK');

row created.

SQL> INSERT INTO Department VALUES (20'RESEARCH',   'DALLAS');

row created.

SQL> INSERT INTO Department VALUES (30'SALES',      'CHICAGO');

row created.

SQL> INSERT INTO Department VALUES (40'OPERATIONS', 'BOSTON');

row created.

SQL>
SQL> alter table Employee add constraint Employee_pk primary key(Employee_ID);

Table altered.

SQL> alter table Department add constraint Department_pk primary key(Deparment_ID);

Table altered.

SQL> alter table Employee add constraint Employee_fk_Department foreign key(Deparment_IDreferences Department;

Table altered.

SQL> alter table Employee add constraint Employee_fk_Employee foreign key(Manager_IDreferences Employee;

Table altered.

SQL>
SQL> select from Employee;

EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID
----------- ---------- --------- ---------- --------- ---------- ---------- ------------
       7369 SMITH      CLERK           7902 17-DEC-80        800                      20
       7499 ALLEN      SALESMAN        7698 20-FEB-81       1600        300           30
       7521 WARD       SALESMAN        7698 22-FEB-81       1250        500           30
       7566 JONES      MANAGER         7839 02-APR-81       2975                      20
       7654 MARTIN     SALESMAN        7698 28-SEP-81       1250       1400           30
       7698 BLAKE      MANAGER         7839 01-MAY-81       2850                      30
       7782 CLARK      MANAGER         7839 09-JUN-81       2450                      10
       7788 SCOTT      ANALYST         7566 09-DEC-82       3000                      20
       7839 KING       PRESIDENT            17-NOV-81       5000                      10
       7844 TURNER     SALESMAN        7698 08-SEP-81       1500          0           30
       7876 ADAMS      CLERK           7788 12-JAN-83       1100                      20

EMPLOYEE_ID EMPLOYEE_N JOB       MANAGER_ID START_DAT     SALARY       COMM DEPARMENT_ID
----------- ---------- --------- ---------- --------- ---------- ---------- ------------
       7900 JAMES      CLERK           7698 03-DEC-81        950                      30
       7902 FORD       ANALYST         7566 03-DEC-81       3000                      20
       7934 MILLER     CLERK           7782 23-JAN-82       1300                      10

14 rows selected.

SQL> select from Department;

DEPARMENT_ID DEPARTMENT_NAM LOCATION
------------ -------------- -------------
          10 ACCOUNTING     NEW YORK
          20 RESEARCH       DALLAS
          30 SALES          CHICAGO
          40 OPERATIONS     BOSTON

SQL>
SQL> drop table Department cascade constraints;

Table dropped.

SQL> drop table Employee cascade constraints;

Table dropped.

SQL>
SQL>
           
       
Related examples in the same category
1. Valiate foreign key example
www.java2java.com | Contact Us
Copyright 2009 - 12 Demo Source and Support. All rights reserved.
All other trademarks are property of their respective owners.