Introduction
One
Scalability
vendor
Unified
Reliability
management
Single
Common
development
skill sets
model
Documents
Multimedia
Messages
Portals
Transactional applications
Business intelligence
Integration
Application Application
development server
framework
• Software provisioning
• Application service level monitoring
Development tools
Internet applications
System management
SQL
Business logic Presentation and
and data business logic
PL/SQL
Databases Application
servers Java
Network services
Strategy
and
analysis
Design
Build
and
document
Transition
Production
Strategy
and
analysis
Design
Build
and
document
Transition
Production
Electronic Database
spreadsheet Filing cabinet
… …
Model of
system
Entity model of
in client’s
client’s model
mind
Table model
of entity model Oracle
server
Tables on disk
EMPLOYEE DEPARTMENT
assigned to
#* number #* number
* name * name
o job title composed of o location
• Scenario
– “. . . Assign one or more employees to a
department . . .”
– “. . . Some departments do not yet have assigned
employees . . .”
Entity Attribute
• Singular, unique name • Singular name
• Uppercase • Lowercase
• Soft box • Mandatory marked with *
• Synonym in parentheses • Optional marked with “o”
EMPLOYEE DEPARTMENT
#* number assigned to
#* number
* name * name
o job title composed of o location
Entity Attribute
• Singular, unique name • Singular name
• Uppercase • Lowercase
• Soft box • Mandatory marked with *
• Synonym in parentheses • Optional marked with “o”
EMPLOYEE DEPARTMENT
#* number assigned to
#* number
* name * name
o job title composed of o location
…
Primary key Foreign key Primary key
3 4
2
A relational database:
• Can be accessed and modified by executing
structured query language (SQL) statements
• Contains a collection of tables with no physical
pointers
• Uses a set of operators
Oracle
server
Data
User tables
dictionary
CREATE
ALTER
DROP
RENAME Data definition language (DDL)
TRUNCATE
COMMENT
COMMIT
ROLLBACK Transaction control
SAVEPOINT
EMPLOYEES
DEPARTMENTS JOB_GRADES