databases. database information is not useful if not organized in database, data are organized in a...

47
Databases

Post on 19-Dec-2015

220 views

Category:

Documents


0 download

TRANSCRIPT

Databases

Database

• Information is not useful if not organized

• In database, data are organized in a way that people find meaningful and useful.

• Database Management System (DBMS) is used to input, sort, organize and store data.

Figure 14-1

DBMS Components

• Hardware: the physical computer system

• Software: the program that allows users to access, maintain update the data

• Data: Data are stored on the computer. In database data are separate entity from the software that access them

• Users: could be either (1) end users: people who has access to the database or (2) application program: applications that access and process data

• Procedures: rules that are defined and followed by the users

Database architecture

• Internal Level: Interact directly with the hardware

• Conceptual Level: (1) Define the logical view of the data. (2) Define the data model. (3) Contain the main functions of the DBMS (4) Intermediary level that free users from dealing with internal level

• External Level: (1) Interact directly with users (2) Display data in familiar format

Database Model

• Database model defines the logical design of data.

• Database model describes the relation between different parts of data.

• There are three database models:1. Hierarchical Model

2. Network Model

3. Relational Model

Hierarchical model

• Data are organized in an upside down tree

• Each entity has one parent and many children

• Old and not used now

Network model

• Entities are organized in a graph

• Entities can be accessed through several paths

• Old and not used

Relational model

• Data are organized in two dimensional tables (relations)

• Tables re related to each other

• Relational Database Management System (RDBMS) are more common model used today

Relation (Name, Attributes, Tuples)

• Relation appears in 2 dimensional table

• That doesn’t mean data stored as table; the physical storage of data is independent of the logical organization of data

• Attributes are the column heading

• Each column must have a unique heading

• Number of columns is called the degree of the relation

• Tuple is a collection of attribute value

• Total number of rows is called Cardinality of the relation

• Each relation must have a unique name

Name

OPERATIONSOPERATIONSONON

RELATIONSRELATIONS

OPERATIONSOPERATIONSONON

RELATIONSRELATIONS

Insert operation

• Unary operation

• Insert Operation: Inserts new tuple into the relation

Delete operation

• Unary operation

• Delete Operation: Deletes tuple from the relation

Update operation

• Unary operation

• Update Operation: Changes the values of some attributes of a tulpe

Select operation

• Unary operation

• Select Operation: Uses some criteria to select some tuples from the original relation

Project operation

• Unary operation

• Project Operation: Creates relation in which each tulpe has fewer attributes

Join operation

• Binary operation

• Join Operation: Takes two relation and combine them based on common attribute

Union operation

• Binary operation

• Union Operation: Creates new relation in which each tuple is either in the first relation, the second relation or in both

Intersection operation

• Binary operation

• Intersection Operation: Creates new relation in which each tuple is either in both relations.

Difference operation

• Binary Operation

• Difference Operation: Creates new relation where the new tuples are in the first relation but not in the second.

STRUCTUREDSTRUCTUREDQUERYQUERY

LANGUAGELANGUAGE

STRUCTUREDSTRUCTUREDQUERYQUERY

LANGUAGELANGUAGE

SQL

• SQL is the standard language used for relational databases.

• It is declarative language where users declare what they want without having to write a step by stem procedure.

• It was first implemented by Oracle Corporation

1. Insert

• SQL Insert Operation format

insert into RELATION-NAMEvalues (…, …, …)

Insert (Example)

insert into COURSESvalues (“CIS52”, “TCP/IP Protocols”, 6)

2. Delete

• SQL Delete Operation format

delete from RELATION-NAMEwhere criteria

Delete (Example)

Delete from COURSESwhere No = “CIS19”

3. Update

• SQL Update Operation format

update RELATION-NAMEset attribute1 = value1 attribute 2 = value2 …where criteria

Update (Example)

update COURSESset unit = 6where No = “CIS51”

4. Select

• SQL Select Operation format

select *from RELATION-NAMEwhere criteria

Select (Example)

select *from COURSESwhere Unit = 5

5. Project

• SQL Project Operation format

select attribute-listfrom RELATION-NAME

Project (Example)

select No, Unitfrom COURSES

6. Join

• SQL Join Operation format

select attribute-listfrom RELATION NO1, RELATION NO2where criteria

Join (Example)

select No, Course-Name, Unit, Professorfrom COURSES, TAUGHT-BYwhere COURSES.No = TAUGHT-BY.No;

7. Union

• SQL Union Operation format

select *from RELATION NO1unionselect *from RELATION NO2

Union (Example)

select *from CIS15-Rosterunionselect *from CIS52-Roster;

8. Intersection

• SQL Intersection Operation format

select *from RELATION NO1intersectionselect *from RELATION NO2

Intersection (Example)

select *from CIS15-Rosterintersectionselect *from CIS52-Roster;

9. Difference

• SQL Difference Operation format

select *from RELATION NO1minusselect *from RELATION NO2

Difference (Example)

select *from CIS15-Rosterminusselect *from CIS52-Roster;

OTHEROTHERDATABASEDATABASEMODELSMODELS

OTHEROTHERDATABASEDATABASEMODELSMODELS

Distributed Databases

• Based on the relational model

• Data are stored in several computers that communicate through the internet

• Data are either (1) fragmented or (2) replicated

1. Fragmented Distributed Databases

• Data are localized; data are stored on local site

• Data can be accessed from different sites as well as the local site

• Although each site has complete control over its local data, there is global control through the internet

2. Replicated Distributed Database

• Each site holds an exact replica of another site

• Any modification in one site is repeated at every site

• If the system fails in one site, the users at this site can access data at another site

The levels of Data

Database One or more tables

Table (relation)

A collection of Records

Record A group of related fields

Field One or more character

Character At least 8 bits

Bit 0 or 1

Types of Database Program

• Are the software tools used to create database. Examples of database programs are:

1.File Management Programs

2.Database Management System

Advanced Databases• Data Warehouses and Data MiningA combination of smaller database that belong to the corporation

• Client/Server Database SystemsSoftware programs used to respond to remote users’ request for

information over the LAN. Server software runs on the server. Client software connects the user to server. The front end of the software is the part that interact with users. The back end refers to the program code. To request information query language is used.

• Web-database integrationEnables customers to proceed enquires over the net. Users don’t

have to use SQL. The web server accept the request and translates it to a query that is sent to the database over the internet

5 Characteristics of Good Database

Data Integrity Ensuring data is valid

Data Independence Data is separated from software

Avoiding data Redundancy

Repetition of input data is avoided

Data Security Data is not accessible to unauthorized users

Data Maintenance Set procedures for adding ,deleting … records for the purpose of optimization