1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

37
1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry

Transcript of 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Page 1: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

1

Chapters IV, XV, and XVI

Database Management Systems

Edited by: Dr. El-Masry

Page 2: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

2

What’s the Difference Between a Database and a Spreadsheet??

Page 3: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Flat-File Environment

Program 1

Program 2

Program 3

A,B,C

X,B,Y

L,B,M

User 2Transactions

User 1Transactions

User 3Transactions

Data

Page 4: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

4

Data Redundancy & Flat-File Problems(Advantages of DataBase Systems)

Data Storage - creates excessive storage costs of paper documents and/or magnetic form

Data Updating - any changes or additions must be performed multiple times

Currency of Information - potential problem of failing to update all affected files

Task-Data Dependency - user’s inability to obtain additional information as his or her needs change

Page 5: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Program 1

Program 2

Program 3

User 2Transactions

User 1Transactions

User 3Transactions

Database

DBMS

A,B,C,X,Y,L,M

Database Approach (Figure 4-2)

Page 6: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Elements of the Database Approach

System DevelopmentProcess

Database Administrator

USERS

DBMS

HostOperatingSystem

PhysicalDatabase

UserPrograms

UserPrograms

UserPrograms

Applications

DataDefinitionLanguage

DataManipulationLanguage

QueryLanguage

User Queries

Transactions

Transactions

Transactions

Sys

tem

Req

ue

sts

Page 7: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

7

4 Elements of the DB Approach

UsersDatabase Administrator (DBA)DBMS—software that runs the DBPhysical database

Page 8: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

8

Users

Access DB in two ways: User programs Queries (SQL)

Page 9: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

9

DBA

Personal responsible for maintaining the DB:

1- Responsible for maintaining the data dictionary Ex: What is meant by “customer” Complete description of entities and their attributes

in the DB2- Responsible for the backup and recovery of the

database3- Responsible for the logical security of the

database (establishing an effective password system).

Page 10: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

10

Physical Database

The lowest level of the DBThe magnetic spots on the hard

drive

Page 11: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

11

DBMS FeaturesUser Programs - make the presence of the

DBMS transparent to the userDirect Query - allows authorized users to

access data without programmingApplication Development - user created

applicationsBackup and Recovery - copies databaseDatabase Usage Reporting - captures

statistics on database usage (who, when, etc.)Database Access - authorizes access to

sections of the database

Page 12: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

12

Internal Controls and DBMS

The purpose of the DBMS is to provide controlled access to the database.

The DBMS is a special software system programmed to know which data elements each user is authorized to access and deny unauthorized requests of data.

Page 13: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

13

Data Definition Language (DDL)

DDL is a programming language used to define

the database to the DBMS (Pg. 111). The DDL identifies the names and the relationship

of all data elements, records, and files that constitute the database.

Viewing Levels (abstract): internal view - physical arrangement of

records (1) conceptual view - representation of database

(1) (ERD is conceptual view) (schema) user view - the portion of the database each

user views (many) (subschema) Refer to the SQL DDL handout.

Page 14: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

14

Data Manipulation Language (DML)

DML is the proprietary programming language that a particular DBMS uses to insert, update, process, store, and delete data (Pg. 111).

Entire user programs may be written in the DML, or selected DML commands can be inserted into universal programs, such as COBOL and FORTRAN.

Refer to the SQL DML handout.

Page 15: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

15

Data Query Language (DQL)

The query capability permits end users and professional programmers to access data in the database without the need for conventional programs (Pg. 111).

IBM’s Structured Query Language (SQL) is a fourth-generation language that has emerged as the standard query language.

Refer to the SQL DQL handout.

Page 16: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

16

Steps in Designing a Database

Phase I: Prepare the conceptual model (ERD) (Pgs. 554-556) Identify the entities Identify the relationships between the entities Prepare the ER diagram (ERD)

Phase II: Specify the logical design (relational schema) Form the tables and relationships (associations) between

tables Show the links between the primary keys and foreign keys.

Phase III: Normalize the tables Final tables in third normal form should be free of anomalies.

Phase IV: Implement the physical design Develop the physical structures Populate the tables Query the tables Access Lab. in weeks 8 and 9.

Page 17: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

17

Phase 1

Prepare the Conceptual Model

Draw an ERD to capture the process.

Page 18: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Entity Relationship Attribute

Primary Key

ER-Diagram Symbols

Page 19: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

19

An Entity

...is an individual object concept event

...may be a specific tangible object intangible object

Entity Class is a collection of entities with similar attributes.

Page 20: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

20

Attributes

A property of an entity that we choose to record (of interest to an organization).CUSTOMER (entity) PRODUCT (entity)customer # product #name descriptionaddress finishtelephone no. pricebalance qty. on hand

Page 21: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Sales-person

Car

Customer Order

Vendor Inventory

Assigned

Places

Supplies

Entity Relationship Entity

1

M

M M

1

1

Cardinalities(Maximum cardinalities method) (Pg. 566)

Page 22: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

22

Example of a Relationship LinkingTwo Entities

CUSTOMER places ORDER

Name Number

Order Number Item #

1 M

Page 23: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

23

ERD Exercises

Hospital ERD Exercise (handout)University ERD Exercise (handout)

Page 24: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

24

Relational Model Data Linkages (>1 table)

No explicit pointers are present. The data are viewed as a collection of independent tables.

Relations are formed by an attribute that is common to both tables in the relation.

Assignment of foreign keys: if 1 to many association, the primary key on the one

side is embedded as the foreign key on the many side. if many to many association, create a new relation

with the primary keys of the two entities as its primary key

if 1 to 1 association, either of the tables’ primary keys may be the foreign key and is embedded in the other table

Remark:Mandatory versus optional entities distinction: If there is a mandatory/optional relationship, then primary on the mandatory side becomes foreign on the optional side.

Page 25: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

34

ER-Diagram using REA Model

Inventory Line items Sales Party to Salesperson

Pays for

Cash CollectionsIncreases

Cash

Made toCustomer

Cashier

Receivedfrom

Received by

M

1

M

M

M

M

M

M

M

M

1

1

1

1

R E A

Page 26: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

26

Phase 2

Specify the Logical Design (Relational schema)

Create a list with all the relational tables and connect them.

Page 27: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

27

Logical Data Structures

A particular method used to organize records in a database is called the database’s structure.

The objective is to develop this structure efficiently so that system developers can build the database in less time. Also, data can be accessed quickly and easily using the schema.

Types of structures include for example: hierarchical (AKA the tree structure) Relational (the one used in this class)

Important Rule: In a relational schema, arrows linking the primary key and the foreign key will always point from foreign key to primary key.

Example: Pg. 597 Relational Schema Exercises:

Hospital schema exercise (handout) University schema exercise (handout)

Page 28: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

28

The Relational Model

The relational model portrays data in the form of two dimensional tables: relation - the database table attributes (data elements) - form

columns tuples (records) - form rows data - the intersection of rows and

columns

Page 29: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

29

Properly Designed Relational Tables

No repeating values - All occurrences at the intersection of a row and column are a single value.

The attribute values in any column must all be of the same class.

Each column in a given table must be uniquely named.

Each row in the table must be unique in at least one attribute, which is the primary key.

Page 30: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

30

Phase 3

Normalize the tables

Transform unnormalized tables into tables in 3rd normal form .

Page 31: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

31

Why Do We Normalize?(Three Types of Anomalies Pgs. 114-116)

Insertion Anomaly: A new item cannot be added to the table until at least one entity uses a particular attribute item.

Deletion Anomaly: If an attribute item used by only one entity is deleted, all information about that attribute item is lost.

Update Anomaly: A modification on an attribute must be made in each of the rows in which the attribute appears.

Anomalies can be corrected by creating relational tables.

Page 32: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

32

Advantages of Relational Tables

Removes all three anomaliesVarious items of interest (customers,

inventory, sales) are stored in separate tables.

Space is used efficiently.Very flexible. Users can form ad hoc

relationships.

Page 33: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

33

The Normalization Process

A process which systematically splits unnormalized complex tables into smaller tables that meet two conditions: all nonkey (secondary) attributes in the table

are dependent on the primary key all nonkey attributes are independent of the

other nonkey attributesWhen unnormalized tables are split and

reduced to third normal form, they must then be linked together by foreign keys.

Refer to handout on normalizationNormalization handout exercises

Page 34: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

Steps in Normalization

Table withrepeating groups

First normalform 1NF

Second normalform 2NF

Third normalform 3NF

Higher normalforms

Removerepeating

groups

Remove partial

dependencies

Removetransitive

dependencies

Removeremaininganomalies

Page 35: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

35

Auditors/Accountants and Data Normalization

The update anomaly can generate conflicting and obsolete database values.

The insertion anomaly can result in unrecorded transactions and incomplete audit trails.

The deletion anomaly can cause the loss of accounting records and the destruction of audit trails.

Auditors and accountants should have an understanding of the data normalization process and be able to determine whether a database is properly normalized.

Page 36: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

36

Phase 4

Implement the Physical Design

Implement in Access (or other DB program)

Page 37: 1 Chapters IV, XV, and XVI Database Management Systems Edited by: Dr. El-Masry.

37

Physical Database Design

Transition from theoretical to physical aspects of database IS IT Develop the physical structures

Decisions about software and hardware Implementation

Establish internal controls Populate the database with data Produce physical user views (multiple) Query the database Access Lab. in weeks 8 and 9.