Download as doc, pdf, or txt
Download as doc, pdf, or txt
You are on page 1of 12

PHYSICAL MODEL

FOR PROJECT

MODEL
HR Model
Version

Created: 3/5/2015
Last Modified: 3/5/2015
Entity Report
#
Entity Name Primary Key Attribut
es

TBL_COUNTRIES CLM_COUNTRY_ID 3
TBL_DEPARTMENTS CLM_DEPARTMENT_ID 4
TBL_EMPLOYEES CLM_EMPLOYEE_ID 11
TBL_JOB_HISTORY CLM_EMPLOYEE_ID, START_DATE 5
TBL_JOBS CLM_JOB_ID 4
TBL_LOCATIONS CLM_LOCATION_ID 6
TBL_REGIONS CLM_REGION_ID 2

-2-
Entity 'HR.COUNTRIES'

Caption TBL_COUNTRIES
Primary Key CNS_COUNTRY_C_ID_PK

Primary Key 'COUNTRY_C_ID_PK'


Attribute Name type Parent Entity
CLM_COUNTRY_ID PK -----

Attributes
Not
Key Attribute Name Data Type Unique Check Comments
Null
UPPER,N
O
SPACES,
PRIMARY KEY OF COUNTRIES
PK CLM_COUNTRY_ID Char(2 ) YES NO NO TABLE.
SPECIAL
CHAREC
TERS
NO
SPECIAL
CLM_COUNTRY_NAME Varchar2(40) NO YES CHAREC COUNTRY NAME
TERS ,
UPPER
REGION ID FOR THE COUNTRY.
FOREIGN KEY TO REGION_ID
FK CLM_REGION_ID Number NO NO COLUMN IN THE DEPARTMENTS
TABLE.

Relationships
Relationship Card
Relationship Name Parent Entity Child Entity
Type .
CNS_COUNTR_REG_FK Non-identifying HR.TBL_REGIONS HR.TBL_COUNTRIES 1:N
CNS_LOC_C_ID_FK Non-identifying HR.TBL_COUNTRIES HR.TBL_LOCATIONS 1:N

Comments
COUNTRY TABLE. CONTAINS 25 ROWS. REFERENCES WITH LOCATIONS TABLE.

-3-
Entity 'HR.DEPARTMENTS'

Caption TBL_DEPARTMENTS
Primary Key CNS_DEPT_ID_PK

Primary Key 'DEPT_ID_PK'


Attribute Name type Parent Entity
DEPARTMENT_ID PK -----

Attributes
Not
Key Attribute Name Data Type Unique Check Comments
Null
CLM_DEPARTMENT_I PRIMARY KEY COLUMN OF
PK Number(4,0) NO NO >0
D DEPARTMENTS TABLE.
A NOT NULL COLUMN THAT
SHOWS NAME OF A
NO DEPARTMENT.
SPECIA ADMINISTRATION,
CLM_DEPARTMENT_ L MARKETING, PURCHASING,
Varchar2(30 ) YES NO
NAME CHARE HUMAN RESOURCES,
CTERS, SHIPPING, IT, EXECUTIVE,
PUBLIC
UPPER RELATIONS, SALES, FINANCE,
AND ACCOUNTING.
MANAGER_ID OF A
DEPARTMENT. FOREIGN KEY TO
EMPLOYEE_ID COLUMN OF
FK CLM_MANAGER_ID Number(6,0) NO NO NO EMPLOYEES TABLE. THE
MANAGER_ID COLUMN OF THE
EMPLOYEE TABLE REFERENCES
THIS COLUMN.
LOCATION ID WHERE A
DEPARTMENT IS LOCATED.
FK CLM_LOCATION_ID Number(4,0) NO NO NO FOREIGN KEY TO LOCATION_ID
COLUMN OF LOCATIONS TABLE.

Relationships
Relationship
Relationship Name Parent Entity Child Entity Card
Type
CNS_DEPT_LOC_FK Non-identifying HR.TBL_LOCATIONS HR.TBL_DEPARTMENTS 1:N
CNS_DEPT_MGR_FK Non-identifying HR.TBL_EMPLOYEES HR.TBL_DEPARTMENTS 1:N
CNS_EMP_DEPT_FK Non-identifying HR.TBL_DEPARTMENTS HR.TBL_EMPLOYEES 1:N
CNS_JHIST_DEPT_FK Non-identifying HR.TBL_DEPARTMENTS HR.TBL_JOB_HISTORY 1:N

Comments
DEPARTMENTS TABLE THAT SHOWS DETAILS OF DEPARTMENTS WHERE
EMPLOYEES WORK. CONTAINS 27 ROWS; REFERENCES WITH LOCATIONS,
EMPLOYEES, AND JOB_HISTORY TABLES.

-4-
Entity 'HR.EMPLOYEES'

Caption TBL_EMPLOYEES
Primary Key CNS_EMP_EMP_ID_PK

Primary Key 'EMP_EMP_ID_PK'


Attribute Name type Parent Entity
EMPLOYEE_ID PK -----

-5-
Attributes
Not Uni
Key Attribute Name Data Type Check Comments
Null que
CLM_EMPLOYEE_I PRIMARY KEY OF EMPLOYEES
PK Number(6,0) NO NO >0
D TABLE.
UPPER, NO
SPECIAL
Varchar2(20 FIRST NAME OF THE EMPLOYEE.
CLM_FIRST_NAME YES NO CHARECTER
) A NOT NULL COLUMN.
S ,NO
SPACES
UPPER, NO
SPECIAL
Varchar2(25 LAST NAME OF THE EMPLOYEE.
CLM_LAST_NAME YES NO CHARECTER
) A NOT NULL COLUMN.
S ,NO
SPACES
Varchar2(25 EMAIL
CLM_EMAIL YES YES EMAIL ID OF THE EMPLOYEE
) RULES
PHONE NUMBER OF THE
CLM_PHONE_NUM Varchar2(20 ONLY
NO NO EMPLOYEE; INCLUDES COUNTRY
BER ) DIGITS CODE AND AREA CODE
DATE WHEN THE EMPLOYEE
<=SYSDAT
CLM_HIRE_DATE Date YES NO STARTED ON THIS JOB. A NOT
E NULL COLUMN.
CURRENT JOB OF THE
EMPLOYEE; FOREIGN KEY TO
Varchar2(10
FK CLM_JOB_ID YES NO JOB_ID COLUMN OF THE
) JOBS TABLE. A NOT NULL
COLUMN.
MONTHLY SALARY OF THE
EMPLOYEE. MUST BE GREATER
CLM_SALARY Number(8,2) YES NO >0 THAN ZERO (ENFORCED BY
CONSTRAINT EMP_SALARY_MIN)
COMMISSION PERCENTAGE OF
THE EMPLOYEE; ONLY
CLM_COMMISSION
Number(2,2) NO NO >0 EMPLOYEES IN SALES
_PCT DEPARTMENT ELGIBLE FOR
COMMISSION PERCENTAGE
MANAGER ID OF THE EMPLOYEE;
HAS SAME DOMAIN AS
MANAGER_ID IN
DEPARTMENTS TABLE. FOREIGN
FK CLM_MANAGER_ID Number(6,0) NO NO NO KEY TO EMPLOYEE_ID COLUMN
OF EMPLOYEES TABLE.
(USEFUL FOR REFLEXIVE JOINS
AND CONNECT BY QUERY)
DEPARTMENT ID WHERE
EMPLOYEE WORKS; FOREIGN
CLM_DEPARTMENT
FK Number(4,0) NO NO NO KEY TO DEPARTMENT_ID
_ID COLUMN OF THE DEPARTMENTS
TABLE

-6-
Relationships
Relationship Card
Relationship Name Parent Entity Child Entity
Type .
HR.TBL_EMPLOYEE HR.TBL_DEPARTME
CNS_DEPT_MGR_FK Non-identifying 1:N
S NTS
HR.TBL_DEPARTME HR.TBL_EMPLOYEE
CNS_EMP_DEPT_FK Non-identifying 1:N
NTS S
HR.TBL_EMPLOYEE
CNS_EMP_JOB_FK Non-identifying HR.TBL_JOBS 1:N
S
CNS_EMP_MANAGER HR.TBL_EMPLOYEE HR.TBL_EMPLOYEE
Non-identifying 1:N
_FK S S
HR.TBL_EMPLOYEE HR.TBL_JOB_HIST
CNS_JHIST_EMP_FK Identifying 1:N
S ORY

Keys
Key
Constraint Name Attributes
Type
PK CNS_EMP_EMP_ID_PK CLM_EMPLOYEE_ID
AK CNS_EMP_EMAIL_UNQ CLM_EMAIL

Comments
EMPLOYEES TABLE. CONTAINS 107 ROWS. REFERENCES WITH DEPARTMENTS,
JOBS, JOB_HISTORY TABLES. CONTAINS A SELF REFERENCE.

-7-
Entity 'HR.JOB_HISTORY'

Caption TBL_JOB_HISTORY
Primary Key CNS_JHIST_EMP_ID_ST_DATE_PK

Primary Key 'JHIST_EMP_ID_ST_DATE_PK'


Attribute Name type Parent Entity
CLM_EMPLOYEE_ID PFK HR.CLM_EMPLOYEES
CLM_START_DATE PK -----

Attributes
Attribute Not
Key Data Type Unique Check Comments
Name Null
A NOT NULL COLUMN IN THE
COMPLEX PRIMARY KEY
CLM_EMPLOYEE
PFK Number(6,0) YES NO EMPLOYEE_ID+START_DATE.
_ID FOREIGN KEY TO EMPLOYEE_ID
COLUMN OF THE EMPLOYEE TABLE
A NOT NULL COLUMN IN THE
COMPLEX PRIMARY KEY
EMPLOYEE_ID+START_DATE.
CLM_START_D <=SYSDAT
PK Date YES NO MUST BE LESS THAN THE END_DATE
ATE E OF THE JOB_HISTORY TABLE.
(ENFORCED BY
CONSTRAINT JHIST_DATE_INTERVAL)
LAST DAY OF THE EMPLOYEE IN THIS
JOB ROLE. A NOT NULL COLUMN.
> MUST BE
CLM_END_DAT
Date YES NO START_DAT GREATER THAN THE START_DATE OF
E THE JOB_HISTORY TABLE.
E
(ENFORCED BY CONSTRAINT
JHIST_DATE_INTERVAL)
JOB ROLE IN WHICH THE EMPLOYEE
WORKED IN THE PAST; FOREIGN KEY
FK CLM_JOB_ID Varchar2(10 ) YES NO TO
JOB_ID COLUMN IN THE JOBS TABLE.
A NOT NULL COLUMN.
DEPARTMENT ID IN WHICH THE
CLM_DEPARTM EMPLOYEE WORKED IN THE PAST;
FK Number(4,0) NO NO
ENT_ID FOREIGN KEY TO DEPARMENT_ID
COLUMN IN THE DEPARTMENTS TABLE

Relationships
Relationship
Relationship Name Parent Entity Child Entity Card.
Type
HR.TBL_DEPARTMEN
CNS_JHIST_DEPT_FK Non-identifying HR.TBL_JOB_HISTORY 1:N
TS
CNS_JHIST_EMP_FK Identifying HR.TBL_EMPLOYEES HR.TBL_JOB_HISTORY 1:N
CNS_JHIST_JOB_FK Non-identifying HR.TBL_JOBS HR.TBL_JOB_HISTORY 1:N

-8-
Table Check Constraints
Check
Constraint CNS_JHIST_DATE_INTERVAL
Name
Check CLM_END_DATE > CLM_START_DATE

Comments
TABLE THAT STORES JOB HISTORY OF THE EMPLOYEES. IF AN EMPLOYEE CHANGES
DEPARTMENTS WITHIN THE JOB OR CHANGES JOBS WITHIN THE DEPARTMENT,
NEW ROWS GET INSERTED INTO THIS TABLE WITH OLD JOB INFORMATION OF THE
EMPLOYEE. CONTAINS A COMPLEX PRIMARY KEY: EMPLOYEE_ID+START_DATE.
CONTAINS 25 ROWS. REFERENCES WITH JOBS, EMPLOYEES, AND DEPARTMENTS
TABLES.

-9-
Entity 'HR.JOBS'

Caption TBL_JOBS
Primary Key CNS_JOB_ID_PK

Primary Key 'JOB_ID_PK'


Attribute Name type Parent Entity
CNS_JOB_ID PK -----

Attributes
Not Uniq
Key Attribute Name Data Type Check Comments
Null ue
ONLY PRIMARY KEY OF JOBS
PK CLM_JOB_ID Varchar2(10 ) NO NO
DIGITS TABLE.
UPPER ,
NO A NOT NULL COLUMN
THAT SHOWS JOB
CLM_JOB_TITLE Varchar2(35 ) YES YES SPECIAL TITLE, E.G. AD_VP,
CHARECTE FI_ACCOUNTANT
RS
MINIMUM SALARY FOR
CLM_MIN_SALARY Number(6,0) NO NO >0 A JOB TITLE.
>
CLM_MAX_SALAR MAXIMUM SALARY FOR
Number(6,0) NO NO MIN_SALA
Y A JOB TITLE
RY

Relationships
Relationship
Relationship Name Parent Entity Child Entity Card.
Type
CNS_EMP_JOB_FK Non-identifying HR.TBL_JOBS HR.TBL_EMPLOYEES 1:N
CNS_JHIST_JOB_FK Non-identifying HR.TBL_JOBS HR.TBL_JOB_HISTORY 1:N

Comments
JOBS TABLE WITH JOB TITLES AND SALARY RANGES. CONTAINS 19 ROWS.
REFERENCES WITH EMPLOYEES AND JOB_HISTORY TABLE.

-10-
Entity 'HR.LOCATIONS'

Caption TBL_LOCATIONS
Primary Key CNS_LOC_ID_PK

Primary Key 'LOC_ID_PK'


Attribute Name type Parent Entity
CLM_LOCATION_ID PK -----

Attributes
Not Uni
Key Attribute Name Data Type Check Comments
Null que
CLM_LOCATION_I
PK Number(4,0) NO NO >0 PRIMARY KEY OF LOCATIONS TABLE
D
STREET ADDRESS OF AN OFFICE,
WAREHOUSE, OR PRODUCTION
CLM_STREET_ADD
Varchar2(40 ) NO NO UPPER SITE OF A COMPANY.
RESS CONTAINS BUILDING NUMBER AND
STREET NAME
ONLY POSTAL CODE OF THE LOCATION OF
CLM_POSTAL_COD AN OFFICE, WAREHOUSE, OR
Varchar2(12 ) NO NO DIGITS,LEN
E PRODUCTION SITE
GTH >=6 OF A COMPANY.
UPPER, NO A NOT NULL COLUMN THAT SHOWS
CITY WHERE AN OFFICE,
SPECIAL
CLM_CITY Varchar2(30 ) YES NO WAREHOUSE, OR
CHARECTE PRODUCTION SITE OF A COMPANY
RS IS LOCATED.
UPPER, NO STATE OR PROVINCE WHERE AN
CLM_STATE_PROV SPECIAL OFFICE, WAREHOUSE, OR
Varchar2(25 ) NO NO
INCE CHARECTE PRODUCTION SITE OF A
RS COMPANY IS LOCATED.
COUNTRY WHERE AN OFFICE,
WAREHOUSE, OR PRODUCTION
SITE OF A COMPANY IS
FK CLM_COUNTRY_ID Char(2 ) NO NO LOCATED. FOREIGN KEY TO
COUNTRY_ID COLUMN OF THE
COUNTRIES TABLE.

Relationships
Relationship
Relationship Name Parent Entity Child Entity Card.
Type
CNS_DEPT_LOC_FK Non-identifying HR.TBL_LOCATIONS HR.TBL_DEPARTMENTS 1:N
CNS_LOC_C_ID_FK Non-identifying HR.TBL_COUNTRIES HR.TBL_LOCATIONS 1:N

Comments
LOCATIONS TABLE THAT CONTAINS SPECIFIC ADDRESS OF A SPECIFIC
OFFICE,WAREHOUSE, AND/OR PRODUCTION SITE OF A COMPANY. DOES NOT STORE
ADDRESSES /LOCATIONS OF CUSTOMERS.

-11-
Entity 'HR.REGIONS'

Caption TBL_REGIONS
Primary Key CNS_REG_ID_PK

Primary Key 'REG_ID_PK'


Attribute Name type Parent Entity
CLM_REGION_ID PK -----

Attributes
Not
Key Attribute Name Data Type Unique Check Comments
Null
PK CLM_REGION_ID Number YES NO >0
UPPER,NO
CLM_REGION_NA
Varchar2(25 ) NO YES SPECIAL
ME
CHARECETS

Relationships
Relationship Name Relationship Type Parent Entity Child Entity Card.
CNS_COUNTR_REG_ HR.TBL_COUNTRI
Non-identifying HR.TBL_REGIONS 1:N
FK ES

-12-

You might also like