Client/Server Databases and the
Oracle 10g Relational Database
Guide to Oracle 10g
Objectives
• Develop an understanding of the purpose of
database systems
• Describe the purpose and contents of an entity-
relationship model
• Explain the steps in the normalization process
• Describe the differences between personal and
client/server databases
By: Deepak Malusare 2
Introduction
• If an organization needs to store and maintain a
large amount of data that must be viewed and
updated by many users at the same time, it often
uses a client/server database such as Oracle 11g.
By: Deepak Malusare 3
Database Systems
• Data files consist of:
– Fields
• Describe characteristics
• Also called columns
– Records
• Group of related fields
By: Deepak Malusare 4
Database Systems (continued)
• Problems with storing data in files:
– Proliferation of data management programs
– Presence of redundant data
– Inconsistent data
• Database
– Stores all organizational data in central location
– Eliminates redundant data to reduce possibility of
inconsistent data
By: Deepak Malusare 5
Database Systems (continued)
• Database management system (DBMS)
– Application that performs all routine data-handling
operations
– Provides central set of common functions for
managing database
• Inserting
• Updating
• Retrieving
• Deleting data values
By: Deepak Malusare 6
Database Approach to Data
Processing
By: Deepak Malusare 7
Database Systems (continued)
• Database administrator
– Person responsible for installing, administering,
and maintaining the database
– Often called DBA
By: Deepak Malusare 8
Overview of Relational Databases
• Table
– Matrix with columns and rows
• Columns
– Represent different data fields
– Characteristics or attributes about entity
• Rows
– Contain individual records
– Attributes about a specific instance of entity
By: Deepak Malusare 9
Overview of Relational Databases
(continued)
By: Deepak Malusare 10
Overview of Relational Databases
(continued)
• Entity
– Object about which you want to store data
– Different tables store data about each different
entity
• Relationships
– Links that show how different records are related
By: Deepak Malusare 11
Overview of Relational Databases
(continued)
• Key fields
– Establish relationships among records in different
tables
– Main types of key fields
• Primary
• Candidate
• Surrogate
• Foreign
• Composite
By: Deepak Malusare 12
Primary Keys
• Column in relational database table whose value
must be unique for each row
• Serves to identify individual occurrence of entity
• Every row must have a primary key
• Cannot be NULL
• NULL
– Value is absent or unknown
– No entry is made for that data element
By: Deepak Malusare 13
Candidate Keys
• Any column that could be used as the primary key
• Should be a column that is unique for each record
and does not change
By: Deepak Malusare 14
Surrogate Keys
• Column created to be record’s primary key
identifier
• Has no real relationship to row to which it is
assigned other than to identify it uniquely
• Surrogate key values automatically generated
using a sequence
By: Deepak Malusare 15
Foreign Keys
• Column in table that is a primary key in another table
• Creates relationship between two tables
• Value must exist in table where it is the primary key
By: Deepak Malusare 16
Composite Keys
• Unique key that is created by combining two or more
columns
• Usually comprises fields that are primary keys in other
tables
Composite
Key
ORDER_ID PRODUCT_ID ORDER_QUANTITY
100 1 2
100 2 2
200 2 2
200 1 1
By: Deepak Malusare 17
Database Systems
• Consists of
– DBMS
• Manages physical storage and data retrieval
– Database applications
• Provide interface that allows users to interact with
database
• Server
– Computer that shares resources with other
computers
By: Deepak Malusare 18
Database Systems (continued)
• Server process
– Program that listens for requests for resources from
clients
– Responds to requests
• Client
– Program that requests and uses server resources
By: Deepak Malusare 19
Client/Server Database Management
Systems
• DBMS server process runs on one workstation
• Database applications run on separate client
workstations across network
• Server sends only requested data back to client
rather than entire database
By: Deepak Malusare 20
Client/Server Database Architecture
By: Deepak Malusare 21
Client/Server Database Management
Systems (continued)
• Generate less network traffic than personal
databases
• Extra features to minimize chance of failure
• Powerful recovery mechanisms that often operate
automatically
• Maintain file-based transaction log on database
server
By: Deepak Malusare 22
Client/Server Database Management
Systems (continued)
• Preferred for
– Database applications that retrieve and manipulate
small amounts of data from databases containing
large numbers of records
– Mission-critical applications
– Web-based database applications that require
increased security and fault tolerance
By: Deepak Malusare 23
The Oracle 10g Client/Server
Database
• Oracle 10g
– Latest release of Oracle Corporation’s relational
database
– Client/server database
• Server side
– DBMS server process
• Oracle Net
– Utility that enables network communication
between client and server
By: Deepak Malusare 24
Client/Server Architecture for
Oracle 10g DBMS
By: Deepak Malusare 25
The Oracle 10g Client/Server
Database (continued)
• Oracle Application Server
– Used to create World Wide Web pages that allow
users to access Oracle databases
• Oracle client products:
– SQL*Plus
– Oracle 10g Developer Suite
– Enterprise Manager
By: Deepak Malusare 26