Databases: Chapter 2: Database System Concepts and Architecture
Databases: Chapter 2: Database System Concepts and Architecture
Fall 2016
Chapter 2 : Database
System Concepts and
Architecture
Entity-Relationship Model
Example of schema in the entityrelationship model
Schema Diagram:
An illustrative display of (most aspects of) a
database schema.
Schema Construct:
A component of the schema or an object
within the schema, e.g., STUDENT, COURSE.
Database Schema
vs. Database State
Database State:
Refers to the content of a database at a
moment in time.
Valid State:
A state that satisfies the structure and
constraints of the database.
Database Schema
vs. Database State
(continued)
Distinction
Example of a Database
Schema
Three-Schema Architecture
(Cont.)
Three-Schema Architecture
Mappings among schema levels are
needed to transform requests and data.
Programs refer to an external schema, and
are mapped by the DBMS to the internal
schema for execution.
Data extracted from the internal DBMS
level is reformatted to match the users
external view (e.g. formatting the results of
an SQL query for display in a Web page)
Data Independence
Logical Data Independence:
The capacity to change the conceptual schema
without having to change the external schemas
and their associated application programs.
Data Independence
(continued)
When a schema at a lower level is
changed, only the mappings between
this schema and higher-level schemas
need to be changed in a DBMS that fully
supports data independence.
The higher-level schemas themselves are
unchanged.
Hence, the application programs need not be
changed since they refer to the external
schemas.
DBMS Languages
(Cont.)
Data Manipulation Language (DML): Used to
specify database retrievals and updates.
- DML commands (data sublanguage) can be
embedded in a general-purpose programming
language (host language), such as COBOL,
PL/1 or PASCAL.
- Alternatively, stand-alone DML commands can
be applied directly (query language).
DBMS Interfaces
- Stand-alone query language interfaces.
- Programmer interfaces for embedding DML in
programming languages:
- Pre-compiler Approach
- Procedure (Subroutine) Call Approach
- User-friendly interfaces:
- Menu-based
- Graphics-based (Point and Click, Drag and Drop etc.)
- Forms-based
- Natural language
- Combinations of the above
- Speech as Input and Output
- Web Browser as an interface
DBMS Interfaces
(Cont.)
- Parametric interfaces using function keys.
- Report generation languages.
- Interfaces for the DBA:
- Creating accounts, granting authorizations
- Setting system parameters
- Changing schemas or access path
Ref2.6 Classification of
DBMSs
(Cont.)
Classification of DBMSs
(Cont.)
Other classifications:
- Single-user (typically used with microcomputers) vs. multi-user (most
DBMSs).
- Centralized (uses a single computer
with one database) vs. distributed (uses
multiple computers, multiple databases)
Classification of DBMSs
(Cont.)