7. Schemas versus Instances
Database Schema:
The description of a database.
Includes descriptions of the database structure and the constraints that should
hold on the database.
Schema Diagram:
A diagrammatic display of (some aspects of) a database schema.
Database Instance: The actual data stored in a database at a particular moment in
time . Also called database state (or occurrence).
The database schema changes very
infrequently . The database state changes every time the database
is updated . Schema is also called intension, whereas state
is called extension.
8. Three-Schema Architecture
Proposed to
support DBMS characteristics of:
- Program-data independence.
- Support of multiple views of the data.
Defines DBMS
schemas at three levels :
- Internal schema at the internal level
to describe data storage structures and access paths. Typically uses a physical data model.
- Conceptual schema at the conceptual
level to describe the structure and constraints for the whole database. Uses a conceptual or an implementation data model.
- External schemas at the external level
to describe the various user views. Usually uses the same data model as the
conceptual level.
Mappings
among schema levels are also needed. Programs refer to an external schema, and are
mapped by the DBMS to the internal schema for execution.

9 Data Independence
Logical Data Independence: The capacity to change the conceptual schema without
having to change the external schemas and their application programs.
Physical Data Independence: The capacity to change the internal schema without
having to change the conceptual schema.
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 the refer to the external schemas.
10. DBMS Languages
Data Definition Language (DDL): Used by the DBA and database designers
to specify the conceptual schema
of a database. In many DBMSs, the DDL is also used to define internal
and external schemas (views). In some DBMSs, separate storage definition
language (SDL) and view definition language (VDL) are
used to define internal and external schemas.
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).
11. 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
- Parametric interfaces using function keys.
- Report generation languages.
- Interfaces for the DBA:
- Creating accounts, granting authorizations
- Setting system parameters
-
Changing schemas or access path

13. Database System Utilities
To perform certain
functions such as:
- Loading data stored in files into a database.
- Backing up the database periodically on tape.
- Reorganizing database file structures.
- Report generation utilities.
- Performance monitoring utilities.
- Other functions, such as sorting , user
monitoring , data compression , etc.
Data
dictionary / repository:
- Used to store schema descriptions and other
information such as design decisions, application program descriptions, user
information, usage standards, etc.
- Active
data dictionary is accessed by DBMS software and users/DBA.
- Passive data dictionary is accessed by users/DBA
only.
14. Classification of DBMSs
Based on the
data model used:
- Traditional: Relational, Network,
Hierarchical.
- Emerging: Object-oriented, Object-relational.
Other
classifications:
- Single-user (typically used with micro-
computers) vs. multi-user (most DBMSs).
- Centralized (uses a single computer with one
database) vs. distributed (uses multiple computers, multiple databases)
Distributed
Database Systems have now come to be known as client server based database
systems because they do not support a totally distributed environment, but
rather a set of database servers supporting a set of clients.