Course Name:
Principles of Database
Departments: Information Technology,
Cypher Security, Artificial
Intelligence, Data Science.
Level:2
Lecturer: Dr. Mohammed Nasser Al-
Khawlani
Course Description
There are two principles goals for this course.
First, to introduce the fundamental concepts
necessary for the design and use of a database
such as DBMS, relational model, Also basic
stages of DB design and how to model the data
using ER.
Second, to provide practical experience in
applying these concepts using one of
commercial database management systems
which is SQL or Ms. Access.
Course Objectives
To identify and discuss the basic concepts of
database theory.
To identify and apply the concepts of data models
To model the data using ER and relational
models.
To know the normalization concepts and applying
these concepts in a good design of data bases.
Course Outline
Lecture 1: Introduction to Database
Systems
Lecture 2: Database Environment
Lecture 3,4: Database Models
Lecture 5,6: Entity Relationship Data
Model
Lecture 7:Mid Exam
Lecture 8,9: Relational Data Model
Lecture 10,11: Database Normalization
Lecture 12: Discussing the assignments
Lecture 13: General Reviewing
Textbook and References
Textbook
Thomas Connoly and Carolyn Begg.
Database Systems, A practical Approach
to Design, Implementation, and
Management. 4th Edition, Addison-Wesley.
References:
R. Elmasri and S.B. Navathe, Fundamentals of
Database System, Benjamin/Cummings,
A. Silberschatz, H.F. Korth and S. Sudarshan.
Database System Concepts, McGraw Hill,
Assessment
Attendance and weekly Exams 5%
Mid Exam 10%
Assignment 5%
Lab 20%
Final Exam 60%
Lecture 1
Introduction to
Databases
Data and Information
Data are raw facts that constitute building block of
information. Data are the heart of the DBMS.
It is to be noted that all the data will not convey
useful information.
Examples: symbols, numbers, registration
forms,..etc.
Useful information is obtained from processed
data.
In other words, data has to be interpreted in order to
obtain information. Good, timely, relevant
information is the key to decision making. Good
decision making is the key to organizational survival.
Examples: Lists of students, Summaries, statistics,
Reports.
Examples of Database Applications
Purchases from the supermarket
Purchases using your credit card
Booking a holiday at the travel agents
Using the local library
Taking out insurance
Renting a video
Using the Internet
Studying at university
File-Based Systems
Collection of application programs that perform
services for the end users (e.g. reports).
Each program defines and manages its own data.
File-Based Processing
Limitations of File-Based Approach
Separation and isolation of data
◦ Each program maintains its own set of data.
◦ Users of one program may be unaware of potentially
useful data held by other programs.
Duplication of data
◦ Same data is held by different programs.
◦ Wasted space and potentially different values and/or
different formats for the same item.
Limitations of File-Based Approach
Data dependence
◦ File structure is defined in the program code.
Incompatible file formats
◦ Programs are written in different languages, and so
cannot easily access each other’s files.
Fixed Queries/Proliferation of application
programs
◦ Programs are written to satisfy particular functions.
◦ Any new requirement needs a new program.
Database Approach
Arose because:
◦ Definition of data was embedded in application
programs, rather than being stored separately and
independently.
◦ No control over access and manipulation of data
beyond that imposed by application programs.
Result:
◦ the database and Database Management System
(DBMS).
Database
Shared collection of logically related data (and a description
of this data), designed to meet the information needs of an
organization.
Logically related data comprises entities, attributes, and
relationships of an organization’s information.
System catalog (metadata) provides description of data to
enable program–data independence.
Database Management System
(DBMS)
A software system that enables users to define, create,
maintain, and control access to the database.
(Database) application program: a computer
program that interacts with database by issuing an
appropriate request (SQL statement) to the DBMS
through users interfaces.
Database Management System
(DBMS)
Database Approach
Data definition language (DDL).
◦ Permits specification of data types, structures and
any data constraints.
◦ All specifications are stored in the database.
Data manipulation language (DML).
◦ General enquiry facility (query language) of the data.
Database Approach
Controlled access to database may include:
◦ a security system
◦ an integrity system
◦ a concurrency control system
◦ a recovery control system
◦ a user-accessible catalog.
Views
Allows each user to have his or her own
view of the database.
A view is essentially some subset of the
database.
Views - Benefits
Reduce complexity
Provide a level of security
Provide a mechanism to customize the appearance
of the database
Present a consistent, unchanging picture of the
structure of the database, even if the underlying
database is changed
Components of DBMS
Environment
Components of DBMS Environment
Hardware
◦ Can range from a PC to a network of computers.
Software
◦ DBMS, operating system, network software (if
necessary) and also the application programs.
Data
◦ Used by the organization and a description of this
data called the schema.
Components of DBMS Environment
Procedures
◦ Instructions and rules that should be applied to
the design and use of the database and DBMS.
People
Roles in the Database Environment
Data Administrator (DA)
Database Administrator (DBA)
Database Designers (Logical and Physical)
Application Programmers
End Users (naive and sophisticated)
History of Database Systems
First-generation
◦ Hierarchical and Network
Second generation
◦ Relational
Third generation
◦ Object-Relational
◦ Object-Oriented
Advantages of DBMSs
Control of data redundancy
Data consistency
More information from the same amount of data
Sharing of data
Improved data integrity
Improved security
Enforcement of standards
Economy of scale
Advantages of DBMSs
Balance conflicting requirements
Improved data accessibility and responsiveness
Increased productivity
Improved maintenance through data independence
Increased concurrency
Improved backup and recovery services
Disadvantages of DBMSs
Complexity
Size
Cost of DBMS
Additional hardware costs
Cost of conversion
Performance
Higher impact of a failure