Lecture 10
Lecture 10
Lecture 10
Lecture # 10
Qurratulann
Department of Computer Science
GC University, Lahore
2
What Is a Database?
Database: A collection of related data stored in a manner so it can
be retrieved as needed
Database management system (DBMS): Used to create, maintain,
and access databases
A database typically consists of:
Tables: Collection of related records
Fields (columns): Single category of data to be stored in a database (name,
telephone number, etc.)
Records (rows): Collection of related fields in a database (all the fields for one
customer, for example)
Relational database: Data from several tables is tied together
(related) using a field that the tables have in common
3
A Simple Relational Database
Example
4
What Is a Database?
Primary key: Specific field that uniquely identifies the records in
that table
Used in a relational
database to relate tables
together
Must be unique and a field
that doesn’t change
PC DBMSs include:
Microsoft Access, Corel
Paradox, Lotus Approach
For more comprehensive
enterprise databases
Oracle Database, IBM DB2, MS SQL Server
5
What Is a Database?
Individuals involved with a DBMS:
Database designers: Design the database
Database developers: Create the database
Database programmers: Write the programs needed to access the
database or tie the database to other programs
Database administrators: Responsible for managing the databases within
an organization
Users: Individuals who enter data, update data, and retrieve information
out of the database
66
The Evolution of Databases
7
Figure: Flat Files Figure: Tree
Example Database Example
Advantages and Disadvantages of
the
DBMS Approach
Advantages
Faster response time
Lower storage requirements
Easier to secure
Increased data accuracy
Disadvantages
Increased vulnerability (backup is essential)
9
Data Concepts and Characteristics
Data hierarchy
Characters
Fields/columns: Hold single pieces of data
Records/rows: Groups of related fields
Tables: Collection of related records
Database: Contains a group of related tables
Entity: Something of importance to the organization
Entities that the organization wants to store data about typically
becomes a database table
Attributes: Characteristics of an entity
Typically become fields in the entity’s database table
10
Data Concepts and Characteristics
Entity relationships: Describe an association between
two or more entities
One-to-one (1:1) entity relationships (not common)
e.g. each store has a single manager
One-to-many (O:M) entity relationships (most common)
e.g. a supplier supplies more than one product to a company
Many-to-many (M:M) entity relationships (requires a third table to tie
the tables together)
e.g. an order can contain multiple products and a product can appear
on multiple orders
11
Data Concepts and Characteristics
Data definition: The process of describing the properties
of data to be included in a database table
During data definition, each field is assigned:
Name (must be unique within the table)
Data type (such as Text, Number, Currency, Date/Time)
Description (optional description of the field)
Properties (field size, format of the field, allowable range, if field is
required, etc.)
Finished specifications for a table become the table
structure
12
Data Definition
13
Data Concepts and Characteristics
Data dictionary: Contains all data definitions in a
database
Table structures
Names, types and properties of each field
Security information (passwords, etc.)
Relationships between the tables in the database
Current information about each table, such as the current number of
records
Does not contain any of the data in the tables
Metadata: Data about the database tables
Ensures that data being entered into the database does not violate
any specified criteria
14
Data Concepts and Characteristics
Data integrity: The accuracy of data
Quality of data input determines the quality of retrieved information
Data validation: Ensuring that data entered into the database is valid
Record validation rules: Checks all fields before changes to a record are
saved
Can be enforced on a per transaction basis so the entire transaction will fail
if one part is invalid
Database locking
Prevents two individuals from changing the same data at the same time
15
Data Validation
16
Data Concepts and Characteristics
Data security: Protecting data against destruction and
misuse
Protects against unauthorized access
Database activity monitoring programs can be used to detect possible
intrusions
Should include strict backup and disaster-recovery procedures
(disaster-recovery plan)
• Protects against data loss
Data privacy: Growing concern because of the vast
amounts of personal data stored in databases today
17
Data Concepts and Characteristics
18
Data Concepts and Characteristics
Direct organization
Uses hashing algorithms to specify the exact storage
location
Location is based on primary key
Algorithms should be
designed to limit collisions
Sometimes a combination of
indexing and direct organization
is used within a database
system
19
Quick Quiz
1. A column in a database in which customer names are stored
would be referred to as a ______________________.
a. field
b. record
c. table
2. True or False: Data validation procedures are used to ensure
that data entered into a database matches the specified type,
format, and allowable value.
3. The ______________________ contains metadata about the
database tables in a database.
Answers:
1) a; 2) True; 3) data dictionary
20
Database Classifications
Single-user database system: Designed to be accessed
by one user
Multiuser database system: Designed to be accessed
by multiple users (most business databases today)
Client-server
database systems:
Has both clients
(front end) and at
least one database
server (back end)
21
Database Classifications
N-tier database system: Has more than two tiers
Middle tiers contain one or more programs stored on one or more
computers
Program code is separate from the
database
Provides flexibility and
scalability
22
Database Classifications
Centralized database system: Database is located on a
single computer, such as a server or mainframe
Distributed database system: Data is physically divided
among several computers connected by a network, but the
database logically looks like it is a single database
Disk-based databases: Data is stored on hard drives
In-memory databases (IMDBs): Data is stored in main memory
Faster, used when performance is critical
Good backup procedures are essential
23
Database Classifications
24
Quick Quiz
1. Which type of database system is beginning to be used in high-
end systems where performance is crucial?
a. In-memory databases
b. Disk-based databases
c. Single-user databases
2. True or False: With the n-tier database model, there is at least
one middle piece of software between the client and the server.
3. With a(n) ______________________ database system, the
databases used by the system are all located on a single computer.
Answers:
1) a; 2) True; 3) centralized
25
Database
Models
Two older models:
Hierarchical databases: Store data in the form of a tree, with typically
a one-to-many relationship between data entities
Network databases: Show the relationship between data elements
usually as either one-to-many or many-to-many
Relational database management system (RDBMS)
Data is organized in tables related by common fields
Most widely used database model today
26
The Relational Database
Model
Database design steps
Identify the purpose of the database
Determine the tables and fields
Assign the fields to a table and reorganize as needed to
minimize
redundancy
(normalization)
Finalize the
structure
(primary keys,
field properties,
etc.)
27
The Relational Database
Model
Creating a relational database:
Create the database file
Create the structure of each individual table (in Access, can be
performed in either Design or Datasheet view)
Enter data
• Existing data can be migrated to the new database
• New data can be added via form or the Design view
Relate tables as needed
28
The Relational Database
Model
29
The Relational Database
Model
30
The Relational Database
Model
31
The Relational Database
Model
Retrieving information from database
Query: A request to see information from a database that matches
specific criteria
Specifies which records should be retrieved by specifying criteria
Can specify the fields to be displayed
Many programs have wizards or other tools to make it easy to
create a query
Must be designed to extract information as efficiently as possible
Queries are saved so they can be retrieved again when needed;
proper results are displayed each time the query is run
32
The Relational Database
Model
33
The Relational Database
Model
Report: Formatted means of looking at a database table or the results of a
query
Reports can pull data from more than one table
Many programs have wizards or other tools to make it easy to
create a report
Can be modified and customized using the Design view
Reports are saved so they can be retrieved again when needed;
proper results are displayed each time the query is run
34
The Relational Database
Model
35
The Relational Database
Model
Maintaining a database
Data in tables can be edited as needed
Table structures can be modified when needed
Other possible modifications:
• Adding new indexes to speed up queries
• Deleting obsolete data
• Upgrading database software, installing patches
• Repairing/restoring data that has become corrupt
• Continuing to evaluate and improve security
36
Databases and the Web
Databases are commonly used on the Web
Information retrieval, e-commerce, dynamic Web pages (change based on user
input), etc.
37
Databases and the Web
How Web databases work
Visitor makes request via a Web site
• Search form
• Logging on to personalize site
• Uploading user content
Web server converts the request into a database query and passes it onto the
database server, and then sends the results back to the visitor
38
Databases and the Web
Middleware is used to connect two otherwise separate
applications, such as a Web server and a database management
system
Commonly written as scripts
• JavaScript
• VB Script
• CGI scripts
• Active Server Pages (ASPs)
• PHP scripts
39
Databases and the Web
40
Quick Quiz
1. Which of the following is the most widely used type of database
today?
a. Network
b. Relational
c. Object-oriented
2. True or False: Databases are often used in conjunction with
dynamic Web pages.
3. A(n) _______________________ is used to extract specific
information from a database by specifying particular conditions about
the data to be retrieved.
Answers:
1) b; 2) True; 3) query
41
Summary
What Is a Database?
Data Concepts and Characteristics
Database Classifications
Database Models
Databases and the Web
42