Download presentation
Presentation is loading. Please wait.
1
Databases
2
OBJECTIVES After reading this chapter, the reader should be able to:
Understand a DBMS and define its components. Understand the architecture of a DBMS and its levels. Distinguish between different database models. Understand the concept of relational database operations on a relation. Use Structured Query Language (SQL) to define simple relations.
3
14.1 DATABASE MANAGEMENT SYSTEM
4
DBMS Database – a collection of data that is logically coherent.
DBMS – Database Management System defines, creates, and maintains a database. Allows users controlled access to data in the database. A combination of 5 components: Hardware Software Data Users Procedures
5
DBMS components Figure 14-1 Hardware – the physical computer system that allows physical access to data. Software – the actual program that allows users to access, maintain, and update physical data. Data – stored physically on the storage devices Users – End users - Normal user and DBA (Database Administrator) Application programs Procedures – a set of rules that should be clearly defined and followed by the users.
6
14.2 ARCHITECTURE
7
Database architecture Figure 14-2
8
Architecture Internal level – Conceptual level – External level –
Determines where data are actually stored on the storage device. Low-level access method Conceptual level – Defines the logical view of the data The main functions of DBMS are in this level. External level – Interacts directly with the user. Change the data coming from the conceptual level to a format and view that are familiar to the users.
9
14.3 DATABASE MODELS
10
Database models A database model 3 models
defines the logical design of data. Describes the relationships between different parts of data. 3 models Hierarchical model Network model Relational model
11
Hierarchical model Data are organized as an upside down tree.
Figure 14-3 Data are organized as an upside down tree. Each entity has only one parent but can have several children.
12
Network model The entities are organized in a graph.
Figure 14-4 The entities are organized in a graph. Some entities can be accessed through several paths.
13
Relational model Figure 14-5 Data are organized in two-dimensional tables called relations. The tables are related to each other. The most popular model.
14
14.4 RELATIONAL MODEL
15
Relational model RDBMS (Relational Database Management System)
external view The data are represented as a set of relations. A relation is a two-dimensional table. This doesn’t mean that data are stored as tables; the physical storage of the data is independent of the way the data are logically organized.
16
Relation Figure 14-6 Name – each relation in a relational database should have a name that is unique among other relations. Attribute – each column in a relation. The degree of the relation – the total number of attributes for a relation. Tuple – each row in a relation. The cardinality of the relation – the total number of rows in a relation.
17
14.5 OPERATIONS ON RELATIONS
18
Operations on relations
In a relational database, we can define several operations to create new relations out of the existing ones. Basic operations: Insert Delete Update Select Project Join Union Intersection Difference
19
Insert operation An unary operation.
Figure 14-7 An unary operation. Insert a new tuple into the relation.
20
Delete operation An unary operation.
Figure 14-8 An unary operation. Delete a tuple defined by a criterion from the relation.
21
Update operation An unary operation.
Figure 14-9 An unary operation. Changes the value of some attributes of a tuple.
22
Select operation An unary operation.
Figure 14-10 An unary operation. It is applied to one single relation and creates another relation. The tuples in the resulting relation are a subset of the tuples in the original relation. Use some criteria to select
23
Project operation An unary operation.
Figure 14-11 An unary operation. It is applied to one single relation and creates another relation. The attributes in the resulting relation are a subset of the attributes in the original relation.
24
Join operation A binary operation.
Figure 14-12 A binary operation. Combines two relations based on common attributes.
25
Union operation A binary operation.
Figure 14-13 A binary operation. Creates a new relation in which each tuple is either in the first relation, in the second, or in both. The two relations must have the same attributes.
26
Intersection operation
Figure 14-14 A binary operation. Creates a new relation in which each tuple is a member in both relations. The two relations must have the same attributes.
27
Difference operation A binary operation.
Figure 14-15 A binary operation. Creates a new relation in which each tuple is in the first relation but not the second. The two relations must have the same attributes.
28
14.6 STRUCTURED QUERY LANGUAGE
29
SQL (Structured Query Language)
Standardized by ANSI and ISO for use on relational databases. It is a declarative (not procedural) language, which means that the users declare what they want without having to write a step-by-step procedure. First implemented by Oracle in 1979. SQL allows you to combine the following statements to extract more complex information from database.
30
Insert insert into RELATION-NAME values ( … , … , … )
insert into COURSES values ( “CIS52”,”TCP/IP”, 6 )
31
Delete delete from RELATION-NAME where criteria
delete from COURSES where No=“CIS19”
32
Update update COURSES set Unit=6 where No=“CIS51”
update RELATION-NAME set attribute1=value1, attribute2=value2, … where criteria update COURSES set Unit=6 where No=“CIS51”
33
Select select * from RELATION-NAME where criteria
select * from COURSES where Unit=5
34
Project select attribute-list from RELATION-NAME
select No, Unit from COURSES
35
Join select attribute-list from RELATION1,RELATION2 where criteria
select No,Course-Name,Unit,Professor from COURSES,TAUGHT-BY where COURSES.No=TAUGHT-BY.No
36
Union select * from RELATION1 union select * from RELATION2
select * from CIS15-Roster union select * from CIS52-Roster
37
Intersection select * from RELATION1 intersection select * from RELATION2 select * from CIS15-Roster intersection select * from CIS52-Roster
38
Difference select * from RELATION1 minus select * from RELATION2
select * from CIS15-Roster minus select * from CIS52-Roster
39
14.7 OTHER DATABASE MODELS
40
Distributed databases
It is not a new model. It is based on relational model. The data are stored on several computers that communicate through the Internet or some private WAN. Data are either fragmented, with each fragment stored at one site, or data are replicated at each site. Fragmented distributed databases Replicated distributed databases
41
Object-Oriented databases
Some application like to see data as a structure such as a record made of fields. Tries to keep the adv. of the relational model and allows applications to access structured data. In an OODB, objects and their relations are defined. In addition, each object can have attributes that can be expressed as fields.
Similar presentations
© 2025 SlidePlayer.com. Inc.
All rights reserved.