SlideShare a Scribd company logo
Module 1
Chapter -1
Introduction to Databases
*Databases play a critical role in almost all the areas where computers are used,
including business, electronic commerce, social media, engineering, medicine,
genetics, law, education and library science.
What is
data?
data refers to the information that is
stored within the tables of database.
What is
database?
A database is a structured collection of
data that is organized, managed, and
stored in a computer system.
What is
DBMS?
A Database Management System (DBMS) is software that allows users
and applications to interact with a database. It provides an interface for
creating, managing, and accessing databases, as well as performing
various operations on the data within the database
Prepared by: Darshan A,
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
Relational DBMS
1) MySQL
2) PostgreSQL
3) Oracle Database
4) Microsoft SQL
Server
5) IBM Db2
6) SQLite
7)MariaDB
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
*Relational databases are a type of database management system
(DBMS) that organizes and stores data in a tabular format,
consisting of rows and columns.
• Rows -> tuples/record
• Columns -> field / attribute
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
*consider the names, telephone numbers, and addresses of the people
you know. Nowadays, this data is typically stored in mobile phones,
which have their own simple database software. This data can also be
recorded in an indexed address book or stored on a hard drive, using
a personal computer and software such as Microsoft Access or Excel.
This collection of related data with an implicit meaning is a database.
*The end users of a database may perform business transactions or
events may happen that cause the information in the database to
change. In order for a database to be accurate and reliable at all
times, it must be a true reflection of the miniworld that it represents;
therefore, changes must be reflected in the data-base as soon as
possible.
The DBMS is a general-purpose software system that facilitates
the processes of defining, constructing, and manipulating
databases for various applications.
Defining a
database
It involves
specifying the
data types,
structures, and
constraints for the
data to be stored
in the database.
Constructing a
database
It is the process of
storing the data
itself on some
storage medium
that is controlled
by the DBMS.
Manipulating a
database
It includes such
functions as querying
the database to
retrieve specific
data, updating the
database to reflect
changes in the
miniworld, and
generating reports
from the data.
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
What is a Query?
*A query is a request for information or action
made to a database management system
(DBMS) to retrieve, modify, or manipulate data.
Queries are typically written using a
structured query language (SQL) or a query
interface provided by the DBMS
It's like asking the
database a question
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
Prepared by: Darshan A, Assist
ant Professor, dept of AI&DS, S
Simplified Environment of database system
* An application program accesses the
database by sending queries or requests
for data to the DBMS.
* A query typically causes some data to be
retrieved.
* A transaction may cause some data to be
read and some data to be written into the
database.
* Other important functions provided by the
DBMS include protecting the database and
maintaining it over a long period of time.
* Protection includes system protection
against hardware or software malfunction
(or crashes) and security protection
against unauthorized or malicious access.
*It is not absolutely necessary to use general-purpose DBMS
software to implement a computerized database.
* It is possible to write a customized set of programs to create
and maintain the database, in effect creating a special-purpose
DBMS software for a specific application, such as airlines
reservations.
Characteristics of Database approach
Problems with traditional File Processing:
*Data inconsistency in a Database Management System
(DBMS) refers to a situation where the stored data
becomes inaccurate, contradictory, or unreliable due to
discrepancies or errors in the data
*Data redundancy refers to the duplication of data within a database
or across multiple databases.
*In the database approach, a single repository of data is maintained
that is defined once and then is accessed by various users.
The main characteristics of the database approach versus the file-
processing approach are the following:
1)Self-Describing Nature of a Database System
*A fundamental characteristic of the database approach is that
the database system contains not only the database itself but
also a complete definition or description of the database
structure and constraints. (Database + Meta-data)
*This definition is stored in the system catalog, which contains
information such as the structure, the type and storage format
of each data item, and various constraints on the data.
* The information stored in the catalog is called meta-data, and
it describes the structure of the primary database.
Prepared by: Darshan A, Assistant Professor, dept of AI&DS, SJCIT.
* The catalog is used by the DBMS software and also
by database users who need information about the
database structure.
* The DBMS software must work equally well with
any number of database applications - for example,
a university database, a banking database, or a
company database - as long as the database
definition is stored in the catalog.
* In traditional file processing - data definition is
typically part of the application programs itself.
Hence, these programs are constrained to work
with only one specific database, whose structure is
declared in the application programs.
* Conclusion: Whereas file-processing software can
access only specific databases, DBMS software can
access diverse databases by extracting the database
definitions from the catalog and then using these
definitions.
Catalog
DBMS software
Data base users
who need
information about
database structure
Prepared by: Darshan A,
2) Support of Multiple Views of the Data
* A database typically has many users, each of whom may require
a different perspective or view of the database.
*A view may be a subset of the database or it may contain virtual
data that is derived from the database files but is not explicitly
stored. Some users may not need to be aware of whether the
data they refer to is stored or derived.
*A multiuser DBMS whose users have a variety of applications
must provide facilities for defining multiple views.
3) Sharing of Data and Multiuser Transaction Processing
* Multiuser DBMS, as its name implies, must allow multiple users to access
the database at the same time. This is essential if data for multiple
applications is to be integrated and maintained in a single database.
* The DBMS must include concurrency control software to ensure that
several users trying to update the same data do so in a controlled
manner so that the result of the updates is correct.
* For example, when several reservation clerks try to assign a seat on an
airline flight, the DBMS should ensure that each seat can be accessed by
only one clerk at a time for assignment to a passenger.
* These types of applications are generally called on-line transaction
processing (OLTP) applications.
* A fundamental role of multiuser DBMS software is to ensure that
concurrent transactions operate correctly.
4) Insulation between Programs and Data, and Data Abstraction
* In traditional file processing, the structure of data files is
embedded in the application programs, so any changes to the
structure of a file may require changing all programs that access
that file.
*By contrast, DBMS access programs do not require such changes
in most cases. The structure of data files is stored in the DBMS
catalog separately from the access programs. This property is
called as program-data independence.
*Data Abstraction: A data model is used to hide storage details
and present the users with a conceptual view of the database.
Actors on the scene
1) Database administrators
* In database environment, Primary resource -> database
secondary resource -> DBMS and related software's.
* DBA responsibilities:
a) Administering(Manage) primary/secondary resources.
b) authorizing access to the database.
c) coordinating and monitoring use of database.
d) acquiring hardware and software resources as needed.
2) Database designers
* responsible for:
a) identifying the data to be stored in the database.
b) choosing appropriate structures to represent and store
data.
c) communicating with database users -> understand their
requirements -> designs database.
d) interact with users and group of users ->develop views for
each of the group of users based on the requirement -> each view
is linked with other views of other group.
3) End users
* End users -> people whose jobs require access to the database -> for querying,
updating, generating reports.
* Several categories of end user are:
a) Casual end users: access database occasionally.
-> typically middle or high level managers or other occasional browsers .
b) naive or parametric end users: constantly querying and updating database
using canned transactions(standard types of queries and updates. Example: a
person who books a reservation tickets will keep on performing the same tasks
by using same queries).
(Canned transactions in database management system refer to predefined
sequences of database operations that are commonly used and encapsulated into
a single transaction. They are particularly useful for automating routine
operations, such as account updates, inventory adjustments, or report
generation)
c) Sophisticated end users: Engineers, scientists, business
analysts and any other users who are aware about the database
management system and facilities that DBMS provides. They
develop there own database applications to meet there
requirements.
d) Stand alone users: maintains personal databases -> using ready-
made program packages. (Example will be the business person
who wants to track of his/her own database using menu driven or
graphic based interface)
4) System analysts and application programmers (software
engineers)
* system analysts -> determine the requirements of end users ->
develop specifications for canned transactions.
* application programmers -> implement specifications as
programs -> test, debug, document and maintain these canned
transactions.
Workers behind the scene
1) System designers and implementers:
Design and implement DBMS modules (modules for implementing the catalog, query
language, interface processors, data access, concurrency control, recovery, and
security) and interfaces as a package.
The DBMS must interface with other system software, such as the operating system and
compilers for various programming languages.
2) Tool developers: persons who design and implement tools(software packages for
database system design which improve performance) (they include packages for
database design, performance monitoring, natural language or graphical interfaces,
prototyping, simulation, and test data generation)
By using tools, performance of different tasks related to database will be improved.
3) Operators and maintenance personnel:
Responsible for actual running and maintenance of hardware and software environment
for database system.
Advantages of using a DBMS
1. Controlling Redundancy
2. Restricting Unauthorized Access
3. Providing Storage Structures and Search Techniques for Efficient Query Processing
4. Providing Backup and Recovery
5. Providing Multiple User Interfaces
6. Representing Complex Relationships among Data
7. Enforcing Integrity Constraints
8. Permitting Inferencing and Actions Using Rules
9. Providing Persistent Storage for Program Objects
10. Additional Implications of Using the Database Approach
a) Potential for Enforcing Standards
b) Reduced Application Development Time.
c) Flexibility
d) Availability of Up-to-Date Information
e) Economies of Scale
Advantages of using a DBMS
1)Controlling redundancy
* In traditional file system, each user group maintains its own files.
*This will lead to wastage of storage space, inconsistency, and
duplication of efforts.
* In the database approach, views of different users are
integrated. All the data's are stored in only one place of the
database. This ensures consistency and saves storage space.
2) Restricting unauthorised access.
*When multiple users share a database, it is likely that some
users will not be authorized to access all information in the
database. For example, financial data is often considered
confidential, and hence only authorized persons are allowed to
access such data.
*In addition, some users may be permitted only to retrieve data,
whereas others are allowed both to retrieve and to update.
Hence, the type of access operation— retrieval or update—must
also be controlled.
*Typically, users or user groups are given account numbers
protected by passwords, which they can use to gain access to
the database.
*A DBMS should provide a security and authorization, which the
DBA uses to create accounts and to specify account restrictions.
DBMS should then enforce these restrictions automatically.
*For example, only the DBA’s staff may be allowed to use certain
privileged software, such as the software for creating new
accounts.
*Similarly, parametric users -> allowed to access the database
only through the canned transactions developed for their use.
What is database system?
*A database system refers to the entire system surrounding the
storage, management, and manipulation of data.
*It includes not only the DBMS software but also hardware,
software applications, users, and the data itself.
*It encompasses all aspects of designing, implementing, and
maintaining databases within an organization.
*It involves the integration of various components to ensure
efficient data storage, retrieval, and management.
3) Providing Storage Structures and Search Techniques for
Efficient Query Processing
* Query processing and optimization module of the DBMS -> it
is a component responsible for efficiently processing user
queries and optimizing their execution(in terms of speed and
resource usage) to improve performance.
*the database is typically stored on disk, the DBMS must provide
specialized data structures and search techniques to speed up
disk search for the desired records. Index file is a type of
auxiliary file which is used for this purpose.
(Indexes are typically based on tree data structures or hash
data structures that are suitably modified for disk search)
*In order to process the database records needed by a particular
query, those records must be copied from disk to main memory.
Therefore, the DBMS often has a buffering or caching module
that maintains parts of the database in main memory buffers.
4) Providing a backup and recovery
* In a Database Management System (DBMS), the backup and
recovery subsystem is a critical component responsible for
ensuring data integrity and availability by providing mechanisms
for creating backups of the database and recovering it to a
consistent state in case of data loss, corruption, or system
failures.
* Recovery subsystem could ensure that the program is resumed
from the point at which it was interrupted so that its full effect
is recorded in the database.
5) Providing Multiple User Interfaces
* Because many types of users with varying levels of technical
knowledge, use a database, a DBMS should provide a variety of
user interfaces.
* These include query languages -> casual users;
programming language interfaces -> application
programmers;
forms and command codes -> parametric users;
menu- driven interfaces and natural language
interfaces -> stand-alone users.
Both forms-style interfaces and menu-driven interfaces are
commonly known as graphical user interfaces (GUIs).
6) Representing Complex Relationships Among Data
* A database may have variety of data stored in different tables.
And all these data are interrelated in many ways.
* DBMS must be capable of
-> representing complex relationship among data.
-> retrieve and update related data easily and efficiently.
7) Enforcing Integrity Constraints
* Integrity constraints are rules or conditions defined on a
database schema that ensure the accuracy, consistency, and
reliability of the data stored in the database.
*It is the database designers responsibility to identify integrity
constraints during database design.
* Simplest type of integrity constraint -> specifying data type for
each data item.
* another type of constraint -> uniqueness of data item values.
"every course record must have a
unique value for CourseNumber.“
8) Permitting Inferencing and Actions Using Rules
* Some database systems provide capabilities for defining deduction
rules for inferencing new information (process of deducing or deriving
new facts or conclusions from existing data using logical reasoning,
rules, or inference mechanisms.) from the stored database facts. Such
systems are called deductive database systems.
*For example, there may be complex rules in the miniworld application
for determining when a student is on probation. These can be specified
as rules, which when compiled and maintained by the DBMS can
determine all students on probation.
* An active database system (ADS) is a type of database management
system (DBMS) that is capable of automatically executing actions,
known as rules or triggers, in response to specific events or conditions
occurring within the database or in the external environment.
Example of active database systems query
9) Providing Persistent Storage for Program Objects and Data
Structures
*Databases can be used to provide persistent storage for program
objects and data structures. This is one of the main reasons for the
emergence of the object-oriented database systems.
* The values of program variables are discarded once a program
terminates, unless the programmer explicitly stores them in
permanent files, which often involves converting these complex
structures into a format suitable for file storage. When the need
arises to read this data once more, the programmer must convert
from the file format to the program variable structure.
* Object-oriented database systems are compatible with programming
languages such as C++ and JAVA, and the DBMS software
automatically performs any necessary conversions.
* An object in C++ can be stored permanently in an object-oriented
DBMS, such as ObjectStore, such an object is said to be persistent,
since it survives the termination of program execution and can
later be directly retrieved by another C++ program.
*The persistent storage of program objects and data structures is
an important function of database systems.
*Traditional database systems often suffered from the so-called
impedance mismatch problem, since the data structures provided
by the DBMS were incompatible with the programming language’s
data structures.
*Object-oriented database systems typically offer data structures
compatibility with one or more object-oriented programming
languages.
10) Additional Implications of Using the Database Approach
a) Potential for enforcing standards
The database approach permits the DBA to define and enforce standards among
database users in a large organization. This facilitates communication and
cooperation among various departments, projects, and users within the organization.
b) Reduced application development time
Important feature of database approach -> developing a new application takes very
little time.
Designing and implementing a large multiuser database from scratch may take
more time than writing a single specialized file application. Once the database is
ready, writing a small application to perform simpler task is very easier and takes
less time.
c) Flexibility
Modern DBMS allow certain types of changes to the structure of database without
affecting the stored data and existing application programs.
d) Availability of up-to-date information
* One user updates the database -> all other users can
immediately see this update.
e) Economies of scale
* By consolidating data and applications, wasteful overlap of
resources can be avoided.
* Reduces overall costs of operation and management.
Data Models
* It is a collection of concepts(Entities, attributes, relationship, constraints,
schemas) that is used to describe the structure of the database.
(datatypes, relationship, and constraints that apply to the data)
* It helps to achieve data abstraction.
* It includes a set of basic operations for specifying retrievals and updates
on the database.
* These concepts are included in data model to specify the dynamic aspect
or behaviour of a database application.
Chapter -2
Overview of Database Languages and Architecture
Data Models, schemas, and instances
Categories of data models:
1) High level or conceptual data model
* It provides concepts that are close to the way many users
perceive data.
*Conceptual data model uses concepts such as entities, attributes
and relationship.
*Entities:- a real world object or concept. Employee or project
from the miniworld that is described in the database.
*Attributes:- represents some property of interest that further
described about an entity, such as the employees name or salary.
*Relationship:- relationship among two or more entities
represented an association among entities.
2) Low-level or physical data model
* provide concepts that describe the details of how data is stored on the
computer storage media, typically magnetic disks.
3) Representational or implementation data models.
* it lies between high level and low level data model.
* These data models are designed to use concepts and structures that can be
easily understood by end users or database designers. These models are still
closely aligned to how the data is physically organised and stored in the
database system.
* They use concepts that end users can easily grasp while being closely aligned
with how the data is actually stored and managed within the database
system.
* Models like relational data model and legacy data model (network model
and hierarchical model) are frequently used in traditional commercial DBMS.
*Object data model as a new family of higher-level
implementation data models that are closed to conceptual data
models. Object data models are also frequently utilised as high-
level conceptual models, particularly in the software engineering
domain.
*Physical data models describe how data is stored in the computer
by representing information such as record formats, record
orderings, and access paths(It is a structure that makes the search
for particular database records efficiently).
*Self describing data model :- The data storage in systems based
on the models combines the description of the data with the data
values themselves.
Schema and Instances
* Schema:- the description of the
database is called database schema,
which is specified during the
database design and is not expected
to change frequently.
* The diagram displays the structure of
each record type but not the actual
instances(data) of records.
* we call each object in the schema,
such as STUDENT or COURSE etc as a
schema construct or table within the
database.
* A schema diagram displays only some
aspects of the schema, such as the
names of record types and data items,
and some types of constraints.
* The actual data in database may
change quite frequently.
* The data in database at a particular
moment in time is called database
state or snapshot or instances in the
database.
Introduction Of Data Base Management System Module 1.pptx
*When we define a new database, we specify its database schema
only to the DBMS. At this point, the corresponding database state is
the empty state with no data. We get the initial state of the
database when the database is first populated or loaded with the
initial data. From then on, every time an update operation is
applied to the database, we get another database state.
*The DBMS is partly responsible for ensuring that every state of the
database is a valid state, that is, a state that satisfies the structure
and constraints specified in the schema. Hence, specifying a correct
schema to the DBMS is extremely important and the schema must be
designed with utmost care.
*The DBMS stores the descriptions of the schema constructs and
constraints - also called the meta-data in the DBMS catalog so that
DBMS software can refer to the schema whenever it needs to.
*The schema is sometimes called as “intension” and database
state/instances is called as “extension” of the schema.
*The schema is not supposed to change frequently, it is not
uncommon that changes occasionally need to be applied to the
schema as the application requirements change. This is known as
schema evolution.
Three schema architecture and data independence
Internal level
• Describes about the
physical storage
structure of the
database.
• Describes complete
details of data storage
and access path.
• Uses “physical data
model”
The goal of three schema architecture is to separate the user applications and the
physical database.
Conceptual level
• It hides the details
of the physical
storage structure
and concentrates
on describing
entities, data
types,
relationships,
constraints etc.
External level
• Describes the part of
the database that a
user is interested in
and hides the rest of
the database from the
user group.
*The goal of the three-schema architecture, is to separate the user
applications from the physical database.
* In this architecture, schemas can be defined at the following three
levels:
1) Internal level
2) Conceptual level
3) External or view level
1) Internal level
*It has an internal schema, which describes the physical storage
structure of the database.
*The internal schema uses a physical data model and describes the
complete details of data storage and access paths for the database.
2) Conceptual level
* It has a conceptual schema, which describes the structure of
the whole database for a community of users.
* The conceptual schema hides the details of physical storage
structures and concentrates on describing entities, data types,
relationships, user operations, and constraints.
3) External or view level
* It includes a number of external schemas or user views.
* Each external schema describes the part of the database that a
particular user group is interested in and hides the rest of the
database from that user group.
Note:
DBMS must transform a request specified on an external schema into
a request against the conceptual schema, and then into a request on
the internal schema for processing over the stored database.
If the request is a database retrieval, the data extracted from the
stored database must be reformatted to match the user’s external
view.
 The processes of transforming requests and results between levels
are called mappings.
 These mappings may be time-consuming, so some DBMSs—especially
those that are meant to support small databases — do not support
external views.
 Even in such systems, however, it is necessary to transform requests
between the conceptual and internal levels.
Data Independence
It can be defined as the capacity to change the schema at one level of a
database system without having to change the schema at the next higher level.
There are two types of data independence:
1) Physical data independence
2) Logical data independence
1) Physical data independence
* It is the capacity to change the internal schema without having to change
the conceptual schema. Hence, the external schemas need not be changed
as well.
* Changes to the internal schema may be needed because some physical files
were reorganized—for example, changing file location, access path etc — to
improve the performance of retrieval or update.
2) Logical data independence
* It is the capacity to change the conceptual schema without
having to change external schemas or application programs.
*We may change the conceptual schema to expand the database,
to change constraints, or to reduce the database.
*changes to constraints can be applied to the conceptual schema
without affecting the external schemas or application programs.
External
schema
Conceptua
l schema
Internal
schema
Logical data independence Physical data independence
DBMS languages
1) Data definition language
* Once the design of a database is completed and a DBMS is chosen to
implement the database, the first step is to specify conceptual and internal
schemas for the database and any mappings between the two.
* In many DBMS where no strict separation of levels is maintained, one
language, called the data definition language (DDL), is used by the DBA and
by database designers to define both schemas.
* The DBMS will have a DDL compiler whose function is to process DDL
statements in order to identify descriptions of the schema constructs and to
store the schema description in the DBMS catalog.
* In DBMS where a clear separation is maintained between the conceptual
and internal levels, the DDL is used to specify the conceptual schema only.
2) Storage Definition Language (SDL)
* It is used to specify the internal schema.
*In most relational DBMS today, there is no specific language that
performs the role of SDL. Instead, internal schema is specified
by a combination of functions, parameters, and specifications
related to storage of files.
3) View Definition Language (VDL)
*It is used to specify user views and their mappings to the
conceptual schema, but in most DBMS, the DDL is used to define
both conceptual and external schemas.
*In relational DBMS, SQL is used in the role of VDL to define user
or application views as results of predefined queries.
4) Data Manipulation Language (DML)
*Once the database schemas are compiled and the database is
populated with data, users must have some means to manipulate
the database.
* Typical manipulations include retrieval, insertion, deletion, and
modification of the data.
* The DBMS provides a set of operations or a language called the
data manipulation language (DML) for these purposes.
*Types of DML are:-
a) high-level or nonprocedural DML
b) low level or procedural DML
Introduction Of Data Base Management System Module 1.pptx
DBMS Interfaces
1) Menu-based Interfaces for Web Clients or Browsing.
*These interfaces present the user with lists of options (called
menus) that lead the user through the formulation of a request.
*Menus do away with the need to memorize the specific
commands and syntax of a query language; rather, the query is
composed step-by step by picking options from a menu that is
displayed by the system.
*Pull-down menus are a very popular technique in Web-based user
interfaces. They are also often used in browsing interfaces,
which allow a user to look through the contents of a database in
an exploratory and unstructured manner.
2) Apps for Mobile Devices.
*These interfaces present mobile users with access to their data.
*For example, banking, reservations, and insurance companies,
among many others, provide apps that allow users to access their
data through a mobile phone or mobile device.
*The apps have built-in programmed interfaces that typically allow
users to login using their account name and password; the apps
then provide a limited menu of options for mobile access to the
user data, as well as options such as paying bills (for banks) or
making reservations.
3) Forms-based Interfaces.
* A forms-based interface displays a form to each user. Users can
fill out all of the form entries to insert new data, or they can fill
out only certain entries, in which case the DBMS will retrieve
matching data for the remaining entries.
*Forms are usually designed and programmed for naive users as
interfaces to canned transactions.
4) Graphical User Interfaces.
* Displays a schema to the user in the diagrammatic form.
*User then manipulates the diagram using queries.
*GUIs utilizes both menus and forms.
5) Natural language interfaces (written form)
* It has its own schema and dictionary of words.
* Natural language interface refers to the schema and dictionary while
interpreting a request.
*If interpretation is successful, then high-level query is generated, and
further sent to DBMS for query processing.
6)Keyword based database search
* This is similar to web search engines, which accepts strings of natural
language (like english or spanish) words and match them with
documents at specific sites or webpages on the web at large.
*They use predefined indexes on the words and use ranking functions to
retrieve and present resulting documents in a decreasing degree of
match.
7) Speech input and output
*Limited use of speech as an input query and speech as an answer to a
question or result of a request is becoming common place.
*Applications with limited vocabularies, such as inquiries for telephone
directory, flight arrival/departure, and credit card account information,
are allowing speech for input and output to enable customers to
access the information.
*The speech input is detected using a library of predefined words and
used to set up the parameters that are supplied to the queries.
*For output, a similar conversion from text or numbers into speech takes
place.
8) Interfaces for Parametric Users.
*Parametric users, such as bank tellers, often have a small set of operations
that they must perform repeatedly.
* For example, a teller is able to use single function keys to invoke routine
and repetitive transactions such as account deposits or withdrawals, or
balance inquiries.
* Systems analysts and programmers design and implement a special
interface for each known class of naive users.
9) Interfaces for the DBA
*Most database systems contain privileged commands that can be used only
by the DBA staff.
*These include commands for creating accounts, setting system parameters,
granting account authorization, changing a schema, and reorganizing the
storage structures of a database.
The database system environment
Executable
code
Object code for
database access
* The figure is divided into two parts. The top part of the figure refers
to the various users of the database environment and their
interfaces. The lower part shows the internal modules of the DBMS
responsible for storage of data and processing of transactions.
*The database and the DBMS catalog are usually stored on disk.
*Access to the disk is controlled primarily by the operating system
(OS), which schedules disk read/write.
*Many DBMSs have their own buffer management module to schedule
disk read/write, because management of buffer storage has a
considerable effect on performance. Reducing disk read/write
improves performance considerably.
*A higher-level stored data manager module of the DBMS, controls
access to DBMS information that is stored on disk, whether it is part
of the database or the catalog.
*Let us consider the top part of figure first. It shows interfaces for
the DBA staff, casual users who work with interactive interfaces to
formulate queries, application programmers who create programs
using some host programming languages, and parametric users
who do data entry work by supplying parameters to predefined
transactions.
*The DBA staff works on defining the database and tuning it by
making changes to its definition of the database using DDL and
other privileged commands.
*The DDL compiler -> processes schema definitions specified in the
DDL, and stores descriptions of the schemas (meta-data) in the
DBMS catalog.
*Casual users and persons with occasional need for information
from the database interact using the interactive query interface.
*These queries are parsed and validated for correctness of the
query syntax, data elements, and so on by a query compiler that
compiles them into internal query. This internal query is
subjected to query optimization.
*the query optimizer is concerned with the rearrangement and
possible reordering of operations, elimination of redundancies,
and use of efficient search algorithms during execution.
*Query optimizer consults the system catalog for statistical and
other physical information about the stored data and generates
executable code that performs the necessary operations for the
query and makes calls on the runtime processor.
* Application programmers write programs in host languages such as Java,
C, or C++ that are submitted to a pre-compiler.
* The pre-compiler extracts DML commands from an application program
written in a host programming language. These commands are sent to the
DML compiler for compilation into object code for database access.
* The rest of the program is sent to the host language compiler.
* The (object codes obtained from the DML commands) + (the rest of the
program) are linked -> forming a canned transaction, whose executable
code includes calls to the runtime database processor.
* Canned transactions are executed repeatedly by parametric users via
PCs or mobile apps; these users simply supply the parameters to the
transactions. Each execution is considered to be a separate transaction.
* An example is a bank payment transaction where the account number,
payee, and amount may be supplied as parameters.
* the runtime database processor executes
(1) the privileged commands
(2) the executable codes
(3) the canned transactions with runtime parameters.
* Runtime database processor works with the system catalog and may update it with
statistics.
* Runtime database processor also works with the stored data manager, which in turn
uses basic operating system services for carrying out low-level input/output
(read/write) operations between the disk and main memory.
* The runtime database processor handles other aspects of data transfer, such as
management of buffers in the main memory.
* Some DBMSs have their own buffer management module whereas others depend on
the OS for buffer management.
* concurrency control and backup and recovery systems separately as a module in this
figure. They are integrated into the working of the runtime database processor for
purposes of transaction management
Database system utilities
* DBMSs have database utilities that help the DBA manage the database system.
a) Loading:
A loading utility is used to load existing data files—such as text files or sequential
files—into the database.
Usually, the current (source) format of the data file and the desired (target)
database file structure are specified to the utility, which then automatically
reformats the data and stores it in the database.
b) Backup:
 A backup utility creates a backup copy of the database, usually by dumping the
entire database onto tape or other mass storage medium.
 The backup copy can be used to restore the database in case of disk failure.
Incremental backups are also often used, where only changes since the previous
backup are recorded.
c) Database storage reorganisation
*This utility can be used to reorganize a set of database files into
different file organizations and create new access paths to
improve performance.
d) Performance monitoring
*Such a utility monitors database usage and provides statistics to
the DBA.
*The DBA uses the statistics in making decisions such as whether or
not to reorganize files or whether to add or drop indexes to
improve performance.
Chapter - 3
Conceptual data model using entities and
relationships
Entity types, Entity sets, attributes, and keys
Entities and attributes
* Entity is a thing or an object in the real world with an independent
existence.
* An entity may be an object with physical existence (Example: a particular
person, son, car, house or employee) or it may be an object with a
conceptual existence (Example: company, job, or university course).
* Each entity has attributes – the particular properties that describe it.
Introduction Of Data Base Management System Module 1.pptx
* Particular entity will have a value for each of its attributes.
* Types of attributes:
a) Composite versus simple attributes
b) Single valued versus multivalued attributes
c) Stored versus derived attributes.
a) Composite versus simple attributes
* Composite attributes can be divided into smaller subparts, which represent more basic attributes
with independent meanings.
* For example, the Address attribute of the EMPLOYEE entity shown in Figure 3.3 can be subdivided
into Street_address, City, State, and Zip, with the values '2311 Kirby', 'Houston', 'Texas', and '77001’.
* Attributes that are not divisible are called simple or atomic attributes.
* Composite attributes can form a hierarchy; for example, Street_address can be further subdivided
into three simple component attributes: Number, Street, and Apartment_number.
* The value of a composite attribute is the concatenation of the values of its component simple
attributes.
* Composite attributes are useful to model situations in which a user sometimes refers to the
composite attribute as a unit but at other times refers specifically to its components.
If the composite attribute is referenced only as a whole, there is no need to
subdivide it into component attributes. For example, if there is no need to
refer to the individual components of an address (Zip Code, street, and so
on), then the whole address can be designated as a simple attribute.
b) Single valued versus multivalued attributes
* Most attributes have a single value for a particular entity; such attributes are
called single-valued. For example, Age is a single-valued attribute of a person.
* An attribute can have a set of values for the same entity for instance, a Colors
attribute for a car, or a College_degrees attribute for a person.
* Cars with one color have a single value, whereas two-tone cars have two color
values.
* Similarly, one person may not have any college degrees, another person
may have one, and a third person may have two or more degrees;
therefore, different people can have different numbers of values for the
College_degrees attribute. Such attributes are called multivalued.
* A multivalued attribute may have lower and upper bounds to constrain the
number of values allowed for each individual entity. For example, the Colors
attribute of a car may be restricted to have between one and two values, if
we assume that a car can have two colors at most.
C) Stored versus Derived Attributes.
*Two (or more) attribute values are related-for example, the Age and
Birth_date attributes of a person. For a particular person entity, the value of
Age can be determined from the current (today's) date and the value of that
person's Birth date. The Age attribute is hence called a derived attribute
and is said to be derivable from the Birth_date attribute, which is called a
stored attribute.
NULL values
* In some cases, a particular entity may not have an applicable value for an
attribute.
*For example, the Apartment_number attribute of an address applies only
to addresses that are in apartment buildings and not to other types of
residences, such as single-family homes. Similarly, a College_degrees
attribute applies only to people with college degrees. For such situations,
a special value called NULL is created.
*An address of a single-family home would have NULL for its
Apartment_number attribute, and a person with no college degree
would have NULL for College_degrees.
* NULL can also be used if we do not know the value of an attribute
for a particular entity - for example, if we do not know the home
phone number of 'John Smith'.
*The meaning of the former type of NULL is not applicable, whereas
the meaning of the latter is unknown. The unknown category of NULL
can be further classified into two cases. The first case arises when
it is known that the attribute value exists but is missing-for
instance, if the Height attribute of a person is listed as NULL. The
second case arises when it is not known whether the attribute
value exists-for example, if the Home_phone attribute of a person
is NULL
Prepared by: Darshan A,
Entity types and Entity sets
*A database usually contains groups of entities that are similar. For
example, a company employing hundreds of employees may want to
store similar information concerning each of the employees. These
employee entities share the same attributes, but each entity has its own
value(s) for each attribute.
*An entity type defines a collection (or set) of entities that have the same
attributes.
*Each entity type in the database is described by its name and attributes.
Figure 3.6 shows two entity types: EMPLOYEE and COMPANY, and a list of
some of the attributes for each.
*A few individual entities of each type are also illustrated, along with the
values of their attributes.
*The collection of all entities of a particular entity type in the database
at any point in time is called an entity set or entity collection.
*An entity type is represented in ER diagrams as a rectangular box
enclosing the entity type name.
*Attribute names are enclosed in ovals and are attached to their
entity type by straight lines.
*Composite attributes are attached to their component attributes
by straight lines.
*Multivalued attributes are displayed in double oval
*An entity type describes the schema or intension for a set of
entities that share the same structure. The collection of entities
of a particular entity type is grouped into an entity set, which is
also called the extension of the entity type.
Introduction Of Data Base Management System Module 1.pptx
1) With neat diagram, explain “Three schema architecture” and “data independence”.
2) List out and explain different characteristics of database approach versus traditional
file processing approach.
3) List out and explain different types of attributes with examples for each.
4) explain roles and responsibilities of below mentioned:
a)Database administrators
b)Database designers
c)End user and there categories
d)system analysts and application programmers
e)system designers and implementers
f)tool developers
g)operators and maintenance personnel
5) Explain simplified environment of database system with neat block diagram.
6) List out and explain advantages of using a DBMS.
7) Define data model. list out and explain categories of data models.
8) Explain the concept of schema and instances with an example.
9) Define data independence. List out and explain types of data independence.
10) List out and explain types of DBMS languages.
11) Discuss different types of user friendly interfaces with database.
12) Explain the database system environment with neat block diagram.
13) List out and explain different types of database system utilities.
14) Explain the following terms given below with examples:
a) entity
b) entity type
c) entity set
Weak entity and ER diagram
concepts
Attach Handwritten notes
Specialization and Generalisation
*As the complexity of data increased in the late 1980’s, it became
more and more difficult to use the traditional ER model for
database designing. Hence some improvements or enhancements
were made to the existing ER model to make it able to handle
complexity.
*Hence as a part of the enhanced ER model, along with other
improvements, three new concepts were added to the existing ER
model, they were
1) Generalisation
2) Specialisation
3) Aggregation.
1) Generalisation
*Generalisation is the process of extracting common properties
from a set of entities and create a generalized entity from it.
*It is a bottom up approach, in which two or more entities can be
generalized to a higher level entity if they have some common
attributes.
2)Specialisation
* An entity is divided into sub entities based on their properties,
*It is a top-down approach where higher level entity is divided into
two or more lower level entities.
The concepts of
generalisation and
specialisation are the
class hierarchies of
“is a” relationship.
The student and
faculty entities are
called as “subclass”
and person entity is
called as
“superclass”.
3) Aggregation
Aggregation in DBMS is the process of combining two or more
entities to form a more meaningful new entity.
Training
center
Course
offers
Person
Person enquires about both
training center and courses provided.
So both the entities will be combined
to form a new entity.
enqui
res
New entity
Alternative notation for ER diagram
((Min,Max) notation)
Each student can enrol minimum 1 and maximum3 courses, and each course
can have maximum 25 students.
Total Participation Partial Participation
College management system ER diagram
Draw the ER diagram for the given problem statement:-
The company database keeps track of company’s employee,
department, and projects. We store employees name, SSN, address,
salary, gender, date of birth, and age. An employee is assigned to one
department, but may work on several projects which are not
necessarily controlled by the same department. A particular employee
manages the department. Each department has a unique name, unique
number and several locations. The department controls number of
projects each of which has a unique name, unique number and single
location. We want to keep track of the dependents of each employee
for insurance purpose. We keep each dependents first name, sex, birth
date, and relationship to employee.
1) Draw an ER diagram for an AIRLINES database schema with atleast five
entities. Also specify primary key and structural constraints.
2)
3) Draw an ER diagram of banking database. Assume your own entities (minimum
4), attributes and relationships.
4) Write an diagram to represent CAR entity type with 2 key attributes
registration and vehicle ID.

More Related Content

PPTX
DBMS-INTRODUCTION.pptx
PPT
Dbms
DOCX
DATABASE MANAGEMENT SYSTEM UNIT-I Chapter-1
PPTX
Components and Advantages of DBMS
PPTX
Chapter1
PDF
Unit 2 rdbms study_material
PPTX
DATABASE MANAGEMENT SYSTEM UNIT 1 - Prof. JISHNU M S
PPTX
Introduction DBMS.pptx
DBMS-INTRODUCTION.pptx
Dbms
DATABASE MANAGEMENT SYSTEM UNIT-I Chapter-1
Components and Advantages of DBMS
Chapter1
Unit 2 rdbms study_material
DATABASE MANAGEMENT SYSTEM UNIT 1 - Prof. JISHNU M S
Introduction DBMS.pptx

Similar to Introduction Of Data Base Management System Module 1.pptx (20)

PPTX
Introduction to Data Base Management System.pptx
PPTX
Chapter one
DOC
1.introduction qb
PPTX
Database management systems
PPTX
ppt on database management
PDF
We presented a list of capabilities that should be provided by the DB.pdf
PPTX
Database Management System.pptx
PDF
Database & dbms
PPTX
Module 1_Overview of Database Management System
PPTX
CP 121_2.pptx about time to be implement
PDF
PPTX
Cp 121 lecture 01
PPT
DataMgt - UNIT-I .PPT
PPTX
Unit 1.pptx
DOC
Database
PPTX
Introduction to Database Management Systems
PPTX
Introduction to Database and database users.pptx
PPT
En ch01
PPTX
Introduction to DBMS.pptx
DOC
Assign 1
Introduction to Data Base Management System.pptx
Chapter one
1.introduction qb
Database management systems
ppt on database management
We presented a list of capabilities that should be provided by the DB.pdf
Database Management System.pptx
Database & dbms
Module 1_Overview of Database Management System
CP 121_2.pptx about time to be implement
Cp 121 lecture 01
DataMgt - UNIT-I .PPT
Unit 1.pptx
Database
Introduction to Database Management Systems
Introduction to Database and database users.pptx
En ch01
Introduction to DBMS.pptx
Assign 1
Ad

Recently uploaded (20)

DOCX
573137875-Attendance-Management-System-original
PPTX
Fundamentals of safety and accident prevention -final (1).pptx
PDF
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
PDF
R24 SURVEYING LAB MANUAL for civil enggi
PDF
737-MAX_SRG.pdf student reference guides
PPTX
Safety Seminar civil to be ensured for safe working.
PPTX
Construction Project Organization Group 2.pptx
PPTX
Foundation to blockchain - A guide to Blockchain Tech
PPTX
CYBER-CRIMES AND SECURITY A guide to understanding
PDF
Embodied AI: Ushering in the Next Era of Intelligent Systems
PPTX
CH1 Production IntroductoryConcepts.pptx
PPTX
bas. eng. economics group 4 presentation 1.pptx
PDF
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
PPTX
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
PPTX
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PDF
PPT on Performance Review to get promotions
PDF
III.4.1.2_The_Space_Environment.p pdffdf
PPTX
Sustainable Sites - Green Building Construction
PPT
Project quality management in manufacturing
PPTX
OOP with Java - Java Introduction (Basics)
573137875-Attendance-Management-System-original
Fundamentals of safety and accident prevention -final (1).pptx
Human-AI Collaboration: Balancing Agentic AI and Autonomy in Hybrid Systems
R24 SURVEYING LAB MANUAL for civil enggi
737-MAX_SRG.pdf student reference guides
Safety Seminar civil to be ensured for safe working.
Construction Project Organization Group 2.pptx
Foundation to blockchain - A guide to Blockchain Tech
CYBER-CRIMES AND SECURITY A guide to understanding
Embodied AI: Ushering in the Next Era of Intelligent Systems
CH1 Production IntroductoryConcepts.pptx
bas. eng. economics group 4 presentation 1.pptx
TFEC-4-2020-Design-Guide-for-Timber-Roof-Trusses.pdf
M Tech Sem 1 Civil Engineering Environmental Sciences.pptx
Infosys Presentation by1.Riyan Bagwan 2.Samadhan Naiknavare 3.Gaurav Shinde 4...
PPT on Performance Review to get promotions
III.4.1.2_The_Space_Environment.p pdffdf
Sustainable Sites - Green Building Construction
Project quality management in manufacturing
OOP with Java - Java Introduction (Basics)
Ad

Introduction Of Data Base Management System Module 1.pptx

  • 2. Chapter -1 Introduction to Databases *Databases play a critical role in almost all the areas where computers are used, including business, electronic commerce, social media, engineering, medicine, genetics, law, education and library science. What is data? data refers to the information that is stored within the tables of database. What is database? A database is a structured collection of data that is organized, managed, and stored in a computer system. What is DBMS? A Database Management System (DBMS) is software that allows users and applications to interact with a database. It provides an interface for creating, managing, and accessing databases, as well as performing various operations on the data within the database Prepared by: Darshan A,
  • 3. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S Relational DBMS 1) MySQL 2) PostgreSQL 3) Oracle Database 4) Microsoft SQL Server 5) IBM Db2 6) SQLite 7)MariaDB
  • 4. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S
  • 5. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S *Relational databases are a type of database management system (DBMS) that organizes and stores data in a tabular format, consisting of rows and columns. • Rows -> tuples/record • Columns -> field / attribute
  • 6. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S *consider the names, telephone numbers, and addresses of the people you know. Nowadays, this data is typically stored in mobile phones, which have their own simple database software. This data can also be recorded in an indexed address book or stored on a hard drive, using a personal computer and software such as Microsoft Access or Excel. This collection of related data with an implicit meaning is a database. *The end users of a database may perform business transactions or events may happen that cause the information in the database to change. In order for a database to be accurate and reliable at all times, it must be a true reflection of the miniworld that it represents; therefore, changes must be reflected in the data-base as soon as possible.
  • 7. The DBMS is a general-purpose software system that facilitates the processes of defining, constructing, and manipulating databases for various applications. Defining a database It involves specifying the data types, structures, and constraints for the data to be stored in the database. Constructing a database It is the process of storing the data itself on some storage medium that is controlled by the DBMS. Manipulating a database It includes such functions as querying the database to retrieve specific data, updating the database to reflect changes in the miniworld, and generating reports from the data.
  • 8. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S What is a Query? *A query is a request for information or action made to a database management system (DBMS) to retrieve, modify, or manipulate data. Queries are typically written using a structured query language (SQL) or a query interface provided by the DBMS It's like asking the database a question
  • 9. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S
  • 10. Prepared by: Darshan A, Assist ant Professor, dept of AI&DS, S Simplified Environment of database system * An application program accesses the database by sending queries or requests for data to the DBMS. * A query typically causes some data to be retrieved. * A transaction may cause some data to be read and some data to be written into the database. * Other important functions provided by the DBMS include protecting the database and maintaining it over a long period of time. * Protection includes system protection against hardware or software malfunction (or crashes) and security protection against unauthorized or malicious access.
  • 11. *It is not absolutely necessary to use general-purpose DBMS software to implement a computerized database. * It is possible to write a customized set of programs to create and maintain the database, in effect creating a special-purpose DBMS software for a specific application, such as airlines reservations.
  • 12. Characteristics of Database approach Problems with traditional File Processing:
  • 13. *Data inconsistency in a Database Management System (DBMS) refers to a situation where the stored data becomes inaccurate, contradictory, or unreliable due to discrepancies or errors in the data
  • 14. *Data redundancy refers to the duplication of data within a database or across multiple databases. *In the database approach, a single repository of data is maintained that is defined once and then is accessed by various users.
  • 15. The main characteristics of the database approach versus the file- processing approach are the following: 1)Self-Describing Nature of a Database System *A fundamental characteristic of the database approach is that the database system contains not only the database itself but also a complete definition or description of the database structure and constraints. (Database + Meta-data) *This definition is stored in the system catalog, which contains information such as the structure, the type and storage format of each data item, and various constraints on the data. * The information stored in the catalog is called meta-data, and it describes the structure of the primary database. Prepared by: Darshan A, Assistant Professor, dept of AI&DS, SJCIT.
  • 16. * The catalog is used by the DBMS software and also by database users who need information about the database structure. * The DBMS software must work equally well with any number of database applications - for example, a university database, a banking database, or a company database - as long as the database definition is stored in the catalog. * In traditional file processing - data definition is typically part of the application programs itself. Hence, these programs are constrained to work with only one specific database, whose structure is declared in the application programs. * Conclusion: Whereas file-processing software can access only specific databases, DBMS software can access diverse databases by extracting the database definitions from the catalog and then using these definitions. Catalog DBMS software Data base users who need information about database structure Prepared by: Darshan A,
  • 17. 2) Support of Multiple Views of the Data * A database typically has many users, each of whom may require a different perspective or view of the database. *A view may be a subset of the database or it may contain virtual data that is derived from the database files but is not explicitly stored. Some users may not need to be aware of whether the data they refer to is stored or derived. *A multiuser DBMS whose users have a variety of applications must provide facilities for defining multiple views.
  • 18. 3) Sharing of Data and Multiuser Transaction Processing * Multiuser DBMS, as its name implies, must allow multiple users to access the database at the same time. This is essential if data for multiple applications is to be integrated and maintained in a single database. * The DBMS must include concurrency control software to ensure that several users trying to update the same data do so in a controlled manner so that the result of the updates is correct. * For example, when several reservation clerks try to assign a seat on an airline flight, the DBMS should ensure that each seat can be accessed by only one clerk at a time for assignment to a passenger. * These types of applications are generally called on-line transaction processing (OLTP) applications. * A fundamental role of multiuser DBMS software is to ensure that concurrent transactions operate correctly.
  • 19. 4) Insulation between Programs and Data, and Data Abstraction * In traditional file processing, the structure of data files is embedded in the application programs, so any changes to the structure of a file may require changing all programs that access that file. *By contrast, DBMS access programs do not require such changes in most cases. The structure of data files is stored in the DBMS catalog separately from the access programs. This property is called as program-data independence. *Data Abstraction: A data model is used to hide storage details and present the users with a conceptual view of the database.
  • 20. Actors on the scene 1) Database administrators * In database environment, Primary resource -> database secondary resource -> DBMS and related software's. * DBA responsibilities: a) Administering(Manage) primary/secondary resources. b) authorizing access to the database. c) coordinating and monitoring use of database. d) acquiring hardware and software resources as needed.
  • 21. 2) Database designers * responsible for: a) identifying the data to be stored in the database. b) choosing appropriate structures to represent and store data. c) communicating with database users -> understand their requirements -> designs database. d) interact with users and group of users ->develop views for each of the group of users based on the requirement -> each view is linked with other views of other group.
  • 22. 3) End users * End users -> people whose jobs require access to the database -> for querying, updating, generating reports. * Several categories of end user are: a) Casual end users: access database occasionally. -> typically middle or high level managers or other occasional browsers . b) naive or parametric end users: constantly querying and updating database using canned transactions(standard types of queries and updates. Example: a person who books a reservation tickets will keep on performing the same tasks by using same queries). (Canned transactions in database management system refer to predefined sequences of database operations that are commonly used and encapsulated into a single transaction. They are particularly useful for automating routine operations, such as account updates, inventory adjustments, or report generation)
  • 23. c) Sophisticated end users: Engineers, scientists, business analysts and any other users who are aware about the database management system and facilities that DBMS provides. They develop there own database applications to meet there requirements. d) Stand alone users: maintains personal databases -> using ready- made program packages. (Example will be the business person who wants to track of his/her own database using menu driven or graphic based interface)
  • 24. 4) System analysts and application programmers (software engineers) * system analysts -> determine the requirements of end users -> develop specifications for canned transactions. * application programmers -> implement specifications as programs -> test, debug, document and maintain these canned transactions.
  • 25. Workers behind the scene 1) System designers and implementers: Design and implement DBMS modules (modules for implementing the catalog, query language, interface processors, data access, concurrency control, recovery, and security) and interfaces as a package. The DBMS must interface with other system software, such as the operating system and compilers for various programming languages. 2) Tool developers: persons who design and implement tools(software packages for database system design which improve performance) (they include packages for database design, performance monitoring, natural language or graphical interfaces, prototyping, simulation, and test data generation) By using tools, performance of different tasks related to database will be improved. 3) Operators and maintenance personnel: Responsible for actual running and maintenance of hardware and software environment for database system.
  • 26. Advantages of using a DBMS 1. Controlling Redundancy 2. Restricting Unauthorized Access 3. Providing Storage Structures and Search Techniques for Efficient Query Processing 4. Providing Backup and Recovery 5. Providing Multiple User Interfaces 6. Representing Complex Relationships among Data 7. Enforcing Integrity Constraints 8. Permitting Inferencing and Actions Using Rules 9. Providing Persistent Storage for Program Objects 10. Additional Implications of Using the Database Approach a) Potential for Enforcing Standards b) Reduced Application Development Time. c) Flexibility d) Availability of Up-to-Date Information e) Economies of Scale
  • 27. Advantages of using a DBMS 1)Controlling redundancy * In traditional file system, each user group maintains its own files. *This will lead to wastage of storage space, inconsistency, and duplication of efforts. * In the database approach, views of different users are integrated. All the data's are stored in only one place of the database. This ensures consistency and saves storage space.
  • 28. 2) Restricting unauthorised access. *When multiple users share a database, it is likely that some users will not be authorized to access all information in the database. For example, financial data is often considered confidential, and hence only authorized persons are allowed to access such data. *In addition, some users may be permitted only to retrieve data, whereas others are allowed both to retrieve and to update. Hence, the type of access operation— retrieval or update—must also be controlled. *Typically, users or user groups are given account numbers protected by passwords, which they can use to gain access to the database.
  • 29. *A DBMS should provide a security and authorization, which the DBA uses to create accounts and to specify account restrictions. DBMS should then enforce these restrictions automatically. *For example, only the DBA’s staff may be allowed to use certain privileged software, such as the software for creating new accounts. *Similarly, parametric users -> allowed to access the database only through the canned transactions developed for their use.
  • 30. What is database system? *A database system refers to the entire system surrounding the storage, management, and manipulation of data. *It includes not only the DBMS software but also hardware, software applications, users, and the data itself. *It encompasses all aspects of designing, implementing, and maintaining databases within an organization. *It involves the integration of various components to ensure efficient data storage, retrieval, and management.
  • 31. 3) Providing Storage Structures and Search Techniques for Efficient Query Processing * Query processing and optimization module of the DBMS -> it is a component responsible for efficiently processing user queries and optimizing their execution(in terms of speed and resource usage) to improve performance. *the database is typically stored on disk, the DBMS must provide specialized data structures and search techniques to speed up disk search for the desired records. Index file is a type of auxiliary file which is used for this purpose. (Indexes are typically based on tree data structures or hash data structures that are suitably modified for disk search)
  • 32. *In order to process the database records needed by a particular query, those records must be copied from disk to main memory. Therefore, the DBMS often has a buffering or caching module that maintains parts of the database in main memory buffers.
  • 33. 4) Providing a backup and recovery * In a Database Management System (DBMS), the backup and recovery subsystem is a critical component responsible for ensuring data integrity and availability by providing mechanisms for creating backups of the database and recovering it to a consistent state in case of data loss, corruption, or system failures. * Recovery subsystem could ensure that the program is resumed from the point at which it was interrupted so that its full effect is recorded in the database.
  • 34. 5) Providing Multiple User Interfaces * Because many types of users with varying levels of technical knowledge, use a database, a DBMS should provide a variety of user interfaces. * These include query languages -> casual users; programming language interfaces -> application programmers; forms and command codes -> parametric users; menu- driven interfaces and natural language interfaces -> stand-alone users. Both forms-style interfaces and menu-driven interfaces are commonly known as graphical user interfaces (GUIs).
  • 35. 6) Representing Complex Relationships Among Data * A database may have variety of data stored in different tables. And all these data are interrelated in many ways. * DBMS must be capable of -> representing complex relationship among data. -> retrieve and update related data easily and efficiently.
  • 36. 7) Enforcing Integrity Constraints * Integrity constraints are rules or conditions defined on a database schema that ensure the accuracy, consistency, and reliability of the data stored in the database. *It is the database designers responsibility to identify integrity constraints during database design. * Simplest type of integrity constraint -> specifying data type for each data item. * another type of constraint -> uniqueness of data item values. "every course record must have a unique value for CourseNumber.“
  • 37. 8) Permitting Inferencing and Actions Using Rules * Some database systems provide capabilities for defining deduction rules for inferencing new information (process of deducing or deriving new facts or conclusions from existing data using logical reasoning, rules, or inference mechanisms.) from the stored database facts. Such systems are called deductive database systems. *For example, there may be complex rules in the miniworld application for determining when a student is on probation. These can be specified as rules, which when compiled and maintained by the DBMS can determine all students on probation. * An active database system (ADS) is a type of database management system (DBMS) that is capable of automatically executing actions, known as rules or triggers, in response to specific events or conditions occurring within the database or in the external environment.
  • 38. Example of active database systems query
  • 39. 9) Providing Persistent Storage for Program Objects and Data Structures *Databases can be used to provide persistent storage for program objects and data structures. This is one of the main reasons for the emergence of the object-oriented database systems. * The values of program variables are discarded once a program terminates, unless the programmer explicitly stores them in permanent files, which often involves converting these complex structures into a format suitable for file storage. When the need arises to read this data once more, the programmer must convert from the file format to the program variable structure. * Object-oriented database systems are compatible with programming languages such as C++ and JAVA, and the DBMS software automatically performs any necessary conversions.
  • 40. * An object in C++ can be stored permanently in an object-oriented DBMS, such as ObjectStore, such an object is said to be persistent, since it survives the termination of program execution and can later be directly retrieved by another C++ program. *The persistent storage of program objects and data structures is an important function of database systems. *Traditional database systems often suffered from the so-called impedance mismatch problem, since the data structures provided by the DBMS were incompatible with the programming language’s data structures. *Object-oriented database systems typically offer data structures compatibility with one or more object-oriented programming languages.
  • 41. 10) Additional Implications of Using the Database Approach a) Potential for enforcing standards The database approach permits the DBA to define and enforce standards among database users in a large organization. This facilitates communication and cooperation among various departments, projects, and users within the organization. b) Reduced application development time Important feature of database approach -> developing a new application takes very little time. Designing and implementing a large multiuser database from scratch may take more time than writing a single specialized file application. Once the database is ready, writing a small application to perform simpler task is very easier and takes less time. c) Flexibility Modern DBMS allow certain types of changes to the structure of database without affecting the stored data and existing application programs.
  • 42. d) Availability of up-to-date information * One user updates the database -> all other users can immediately see this update. e) Economies of scale * By consolidating data and applications, wasteful overlap of resources can be avoided. * Reduces overall costs of operation and management.
  • 43. Data Models * It is a collection of concepts(Entities, attributes, relationship, constraints, schemas) that is used to describe the structure of the database. (datatypes, relationship, and constraints that apply to the data) * It helps to achieve data abstraction. * It includes a set of basic operations for specifying retrievals and updates on the database. * These concepts are included in data model to specify the dynamic aspect or behaviour of a database application. Chapter -2 Overview of Database Languages and Architecture Data Models, schemas, and instances
  • 44. Categories of data models: 1) High level or conceptual data model * It provides concepts that are close to the way many users perceive data. *Conceptual data model uses concepts such as entities, attributes and relationship. *Entities:- a real world object or concept. Employee or project from the miniworld that is described in the database. *Attributes:- represents some property of interest that further described about an entity, such as the employees name or salary. *Relationship:- relationship among two or more entities represented an association among entities.
  • 45. 2) Low-level or physical data model * provide concepts that describe the details of how data is stored on the computer storage media, typically magnetic disks. 3) Representational or implementation data models. * it lies between high level and low level data model. * These data models are designed to use concepts and structures that can be easily understood by end users or database designers. These models are still closely aligned to how the data is physically organised and stored in the database system. * They use concepts that end users can easily grasp while being closely aligned with how the data is actually stored and managed within the database system. * Models like relational data model and legacy data model (network model and hierarchical model) are frequently used in traditional commercial DBMS.
  • 46. *Object data model as a new family of higher-level implementation data models that are closed to conceptual data models. Object data models are also frequently utilised as high- level conceptual models, particularly in the software engineering domain. *Physical data models describe how data is stored in the computer by representing information such as record formats, record orderings, and access paths(It is a structure that makes the search for particular database records efficiently). *Self describing data model :- The data storage in systems based on the models combines the description of the data with the data values themselves.
  • 47. Schema and Instances * Schema:- the description of the database is called database schema, which is specified during the database design and is not expected to change frequently. * The diagram displays the structure of each record type but not the actual instances(data) of records. * we call each object in the schema, such as STUDENT or COURSE etc as a schema construct or table within the database. * A schema diagram displays only some aspects of the schema, such as the names of record types and data items, and some types of constraints. * The actual data in database may change quite frequently. * The data in database at a particular moment in time is called database state or snapshot or instances in the database.
  • 49. *When we define a new database, we specify its database schema only to the DBMS. At this point, the corresponding database state is the empty state with no data. We get the initial state of the database when the database is first populated or loaded with the initial data. From then on, every time an update operation is applied to the database, we get another database state. *The DBMS is partly responsible for ensuring that every state of the database is a valid state, that is, a state that satisfies the structure and constraints specified in the schema. Hence, specifying a correct schema to the DBMS is extremely important and the schema must be designed with utmost care. *The DBMS stores the descriptions of the schema constructs and constraints - also called the meta-data in the DBMS catalog so that DBMS software can refer to the schema whenever it needs to.
  • 50. *The schema is sometimes called as “intension” and database state/instances is called as “extension” of the schema. *The schema is not supposed to change frequently, it is not uncommon that changes occasionally need to be applied to the schema as the application requirements change. This is known as schema evolution.
  • 51. Three schema architecture and data independence Internal level • Describes about the physical storage structure of the database. • Describes complete details of data storage and access path. • Uses “physical data model” The goal of three schema architecture is to separate the user applications and the physical database. Conceptual level • It hides the details of the physical storage structure and concentrates on describing entities, data types, relationships, constraints etc. External level • Describes the part of the database that a user is interested in and hides the rest of the database from the user group.
  • 52. *The goal of the three-schema architecture, is to separate the user applications from the physical database. * In this architecture, schemas can be defined at the following three levels: 1) Internal level 2) Conceptual level 3) External or view level 1) Internal level *It has an internal schema, which describes the physical storage structure of the database. *The internal schema uses a physical data model and describes the complete details of data storage and access paths for the database.
  • 53. 2) Conceptual level * It has a conceptual schema, which describes the structure of the whole database for a community of users. * The conceptual schema hides the details of physical storage structures and concentrates on describing entities, data types, relationships, user operations, and constraints. 3) External or view level * It includes a number of external schemas or user views. * Each external schema describes the part of the database that a particular user group is interested in and hides the rest of the database from that user group.
  • 54. Note: DBMS must transform a request specified on an external schema into a request against the conceptual schema, and then into a request on the internal schema for processing over the stored database. If the request is a database retrieval, the data extracted from the stored database must be reformatted to match the user’s external view.  The processes of transforming requests and results between levels are called mappings.  These mappings may be time-consuming, so some DBMSs—especially those that are meant to support small databases — do not support external views.  Even in such systems, however, it is necessary to transform requests between the conceptual and internal levels.
  • 55. Data Independence It can be defined as the capacity to change the schema at one level of a database system without having to change the schema at the next higher level. There are two types of data independence: 1) Physical data independence 2) Logical data independence 1) Physical data independence * It is the capacity to change the internal schema without having to change the conceptual schema. Hence, the external schemas need not be changed as well. * Changes to the internal schema may be needed because some physical files were reorganized—for example, changing file location, access path etc — to improve the performance of retrieval or update.
  • 56. 2) Logical data independence * It is the capacity to change the conceptual schema without having to change external schemas or application programs. *We may change the conceptual schema to expand the database, to change constraints, or to reduce the database. *changes to constraints can be applied to the conceptual schema without affecting the external schemas or application programs. External schema Conceptua l schema Internal schema Logical data independence Physical data independence
  • 57. DBMS languages 1) Data definition language * Once the design of a database is completed and a DBMS is chosen to implement the database, the first step is to specify conceptual and internal schemas for the database and any mappings between the two. * In many DBMS where no strict separation of levels is maintained, one language, called the data definition language (DDL), is used by the DBA and by database designers to define both schemas. * The DBMS will have a DDL compiler whose function is to process DDL statements in order to identify descriptions of the schema constructs and to store the schema description in the DBMS catalog. * In DBMS where a clear separation is maintained between the conceptual and internal levels, the DDL is used to specify the conceptual schema only.
  • 58. 2) Storage Definition Language (SDL) * It is used to specify the internal schema. *In most relational DBMS today, there is no specific language that performs the role of SDL. Instead, internal schema is specified by a combination of functions, parameters, and specifications related to storage of files. 3) View Definition Language (VDL) *It is used to specify user views and their mappings to the conceptual schema, but in most DBMS, the DDL is used to define both conceptual and external schemas. *In relational DBMS, SQL is used in the role of VDL to define user or application views as results of predefined queries.
  • 59. 4) Data Manipulation Language (DML) *Once the database schemas are compiled and the database is populated with data, users must have some means to manipulate the database. * Typical manipulations include retrieval, insertion, deletion, and modification of the data. * The DBMS provides a set of operations or a language called the data manipulation language (DML) for these purposes. *Types of DML are:- a) high-level or nonprocedural DML b) low level or procedural DML
  • 61. DBMS Interfaces 1) Menu-based Interfaces for Web Clients or Browsing. *These interfaces present the user with lists of options (called menus) that lead the user through the formulation of a request. *Menus do away with the need to memorize the specific commands and syntax of a query language; rather, the query is composed step-by step by picking options from a menu that is displayed by the system. *Pull-down menus are a very popular technique in Web-based user interfaces. They are also often used in browsing interfaces, which allow a user to look through the contents of a database in an exploratory and unstructured manner.
  • 62. 2) Apps for Mobile Devices. *These interfaces present mobile users with access to their data. *For example, banking, reservations, and insurance companies, among many others, provide apps that allow users to access their data through a mobile phone or mobile device. *The apps have built-in programmed interfaces that typically allow users to login using their account name and password; the apps then provide a limited menu of options for mobile access to the user data, as well as options such as paying bills (for banks) or making reservations.
  • 63. 3) Forms-based Interfaces. * A forms-based interface displays a form to each user. Users can fill out all of the form entries to insert new data, or they can fill out only certain entries, in which case the DBMS will retrieve matching data for the remaining entries. *Forms are usually designed and programmed for naive users as interfaces to canned transactions. 4) Graphical User Interfaces. * Displays a schema to the user in the diagrammatic form. *User then manipulates the diagram using queries. *GUIs utilizes both menus and forms.
  • 64. 5) Natural language interfaces (written form) * It has its own schema and dictionary of words. * Natural language interface refers to the schema and dictionary while interpreting a request. *If interpretation is successful, then high-level query is generated, and further sent to DBMS for query processing. 6)Keyword based database search * This is similar to web search engines, which accepts strings of natural language (like english or spanish) words and match them with documents at specific sites or webpages on the web at large. *They use predefined indexes on the words and use ranking functions to retrieve and present resulting documents in a decreasing degree of match.
  • 65. 7) Speech input and output *Limited use of speech as an input query and speech as an answer to a question or result of a request is becoming common place. *Applications with limited vocabularies, such as inquiries for telephone directory, flight arrival/departure, and credit card account information, are allowing speech for input and output to enable customers to access the information. *The speech input is detected using a library of predefined words and used to set up the parameters that are supplied to the queries. *For output, a similar conversion from text or numbers into speech takes place.
  • 66. 8) Interfaces for Parametric Users. *Parametric users, such as bank tellers, often have a small set of operations that they must perform repeatedly. * For example, a teller is able to use single function keys to invoke routine and repetitive transactions such as account deposits or withdrawals, or balance inquiries. * Systems analysts and programmers design and implement a special interface for each known class of naive users. 9) Interfaces for the DBA *Most database systems contain privileged commands that can be used only by the DBA staff. *These include commands for creating accounts, setting system parameters, granting account authorization, changing a schema, and reorganizing the storage structures of a database.
  • 67. The database system environment Executable code Object code for database access
  • 68. * The figure is divided into two parts. The top part of the figure refers to the various users of the database environment and their interfaces. The lower part shows the internal modules of the DBMS responsible for storage of data and processing of transactions. *The database and the DBMS catalog are usually stored on disk. *Access to the disk is controlled primarily by the operating system (OS), which schedules disk read/write. *Many DBMSs have their own buffer management module to schedule disk read/write, because management of buffer storage has a considerable effect on performance. Reducing disk read/write improves performance considerably. *A higher-level stored data manager module of the DBMS, controls access to DBMS information that is stored on disk, whether it is part of the database or the catalog.
  • 69. *Let us consider the top part of figure first. It shows interfaces for the DBA staff, casual users who work with interactive interfaces to formulate queries, application programmers who create programs using some host programming languages, and parametric users who do data entry work by supplying parameters to predefined transactions. *The DBA staff works on defining the database and tuning it by making changes to its definition of the database using DDL and other privileged commands. *The DDL compiler -> processes schema definitions specified in the DDL, and stores descriptions of the schemas (meta-data) in the DBMS catalog.
  • 70. *Casual users and persons with occasional need for information from the database interact using the interactive query interface. *These queries are parsed and validated for correctness of the query syntax, data elements, and so on by a query compiler that compiles them into internal query. This internal query is subjected to query optimization. *the query optimizer is concerned with the rearrangement and possible reordering of operations, elimination of redundancies, and use of efficient search algorithms during execution. *Query optimizer consults the system catalog for statistical and other physical information about the stored data and generates executable code that performs the necessary operations for the query and makes calls on the runtime processor.
  • 71. * Application programmers write programs in host languages such as Java, C, or C++ that are submitted to a pre-compiler. * The pre-compiler extracts DML commands from an application program written in a host programming language. These commands are sent to the DML compiler for compilation into object code for database access. * The rest of the program is sent to the host language compiler. * The (object codes obtained from the DML commands) + (the rest of the program) are linked -> forming a canned transaction, whose executable code includes calls to the runtime database processor. * Canned transactions are executed repeatedly by parametric users via PCs or mobile apps; these users simply supply the parameters to the transactions. Each execution is considered to be a separate transaction. * An example is a bank payment transaction where the account number, payee, and amount may be supplied as parameters.
  • 72. * the runtime database processor executes (1) the privileged commands (2) the executable codes (3) the canned transactions with runtime parameters. * Runtime database processor works with the system catalog and may update it with statistics. * Runtime database processor also works with the stored data manager, which in turn uses basic operating system services for carrying out low-level input/output (read/write) operations between the disk and main memory. * The runtime database processor handles other aspects of data transfer, such as management of buffers in the main memory. * Some DBMSs have their own buffer management module whereas others depend on the OS for buffer management. * concurrency control and backup and recovery systems separately as a module in this figure. They are integrated into the working of the runtime database processor for purposes of transaction management
  • 73. Database system utilities * DBMSs have database utilities that help the DBA manage the database system. a) Loading: A loading utility is used to load existing data files—such as text files or sequential files—into the database. Usually, the current (source) format of the data file and the desired (target) database file structure are specified to the utility, which then automatically reformats the data and stores it in the database. b) Backup:  A backup utility creates a backup copy of the database, usually by dumping the entire database onto tape or other mass storage medium.  The backup copy can be used to restore the database in case of disk failure. Incremental backups are also often used, where only changes since the previous backup are recorded.
  • 74. c) Database storage reorganisation *This utility can be used to reorganize a set of database files into different file organizations and create new access paths to improve performance. d) Performance monitoring *Such a utility monitors database usage and provides statistics to the DBA. *The DBA uses the statistics in making decisions such as whether or not to reorganize files or whether to add or drop indexes to improve performance.
  • 75. Chapter - 3 Conceptual data model using entities and relationships Entity types, Entity sets, attributes, and keys Entities and attributes * Entity is a thing or an object in the real world with an independent existence. * An entity may be an object with physical existence (Example: a particular person, son, car, house or employee) or it may be an object with a conceptual existence (Example: company, job, or university course). * Each entity has attributes – the particular properties that describe it.
  • 77. * Particular entity will have a value for each of its attributes. * Types of attributes: a) Composite versus simple attributes b) Single valued versus multivalued attributes c) Stored versus derived attributes. a) Composite versus simple attributes * Composite attributes can be divided into smaller subparts, which represent more basic attributes with independent meanings. * For example, the Address attribute of the EMPLOYEE entity shown in Figure 3.3 can be subdivided into Street_address, City, State, and Zip, with the values '2311 Kirby', 'Houston', 'Texas', and '77001’. * Attributes that are not divisible are called simple or atomic attributes. * Composite attributes can form a hierarchy; for example, Street_address can be further subdivided into three simple component attributes: Number, Street, and Apartment_number. * The value of a composite attribute is the concatenation of the values of its component simple attributes. * Composite attributes are useful to model situations in which a user sometimes refers to the composite attribute as a unit but at other times refers specifically to its components.
  • 78. If the composite attribute is referenced only as a whole, there is no need to subdivide it into component attributes. For example, if there is no need to refer to the individual components of an address (Zip Code, street, and so on), then the whole address can be designated as a simple attribute.
  • 79. b) Single valued versus multivalued attributes * Most attributes have a single value for a particular entity; such attributes are called single-valued. For example, Age is a single-valued attribute of a person. * An attribute can have a set of values for the same entity for instance, a Colors attribute for a car, or a College_degrees attribute for a person. * Cars with one color have a single value, whereas two-tone cars have two color values. * Similarly, one person may not have any college degrees, another person may have one, and a third person may have two or more degrees; therefore, different people can have different numbers of values for the College_degrees attribute. Such attributes are called multivalued. * A multivalued attribute may have lower and upper bounds to constrain the number of values allowed for each individual entity. For example, the Colors attribute of a car may be restricted to have between one and two values, if we assume that a car can have two colors at most.
  • 80. C) Stored versus Derived Attributes. *Two (or more) attribute values are related-for example, the Age and Birth_date attributes of a person. For a particular person entity, the value of Age can be determined from the current (today's) date and the value of that person's Birth date. The Age attribute is hence called a derived attribute and is said to be derivable from the Birth_date attribute, which is called a stored attribute. NULL values * In some cases, a particular entity may not have an applicable value for an attribute. *For example, the Apartment_number attribute of an address applies only to addresses that are in apartment buildings and not to other types of residences, such as single-family homes. Similarly, a College_degrees attribute applies only to people with college degrees. For such situations, a special value called NULL is created.
  • 81. *An address of a single-family home would have NULL for its Apartment_number attribute, and a person with no college degree would have NULL for College_degrees. * NULL can also be used if we do not know the value of an attribute for a particular entity - for example, if we do not know the home phone number of 'John Smith'. *The meaning of the former type of NULL is not applicable, whereas the meaning of the latter is unknown. The unknown category of NULL can be further classified into two cases. The first case arises when it is known that the attribute value exists but is missing-for instance, if the Height attribute of a person is listed as NULL. The second case arises when it is not known whether the attribute value exists-for example, if the Home_phone attribute of a person is NULL Prepared by: Darshan A,
  • 82. Entity types and Entity sets
  • 83. *A database usually contains groups of entities that are similar. For example, a company employing hundreds of employees may want to store similar information concerning each of the employees. These employee entities share the same attributes, but each entity has its own value(s) for each attribute. *An entity type defines a collection (or set) of entities that have the same attributes. *Each entity type in the database is described by its name and attributes. Figure 3.6 shows two entity types: EMPLOYEE and COMPANY, and a list of some of the attributes for each. *A few individual entities of each type are also illustrated, along with the values of their attributes. *The collection of all entities of a particular entity type in the database at any point in time is called an entity set or entity collection.
  • 84. *An entity type is represented in ER diagrams as a rectangular box enclosing the entity type name. *Attribute names are enclosed in ovals and are attached to their entity type by straight lines. *Composite attributes are attached to their component attributes by straight lines. *Multivalued attributes are displayed in double oval *An entity type describes the schema or intension for a set of entities that share the same structure. The collection of entities of a particular entity type is grouped into an entity set, which is also called the extension of the entity type.
  • 86. 1) With neat diagram, explain “Three schema architecture” and “data independence”. 2) List out and explain different characteristics of database approach versus traditional file processing approach. 3) List out and explain different types of attributes with examples for each. 4) explain roles and responsibilities of below mentioned: a)Database administrators b)Database designers c)End user and there categories d)system analysts and application programmers e)system designers and implementers f)tool developers g)operators and maintenance personnel 5) Explain simplified environment of database system with neat block diagram.
  • 87. 6) List out and explain advantages of using a DBMS. 7) Define data model. list out and explain categories of data models. 8) Explain the concept of schema and instances with an example. 9) Define data independence. List out and explain types of data independence. 10) List out and explain types of DBMS languages. 11) Discuss different types of user friendly interfaces with database. 12) Explain the database system environment with neat block diagram. 13) List out and explain different types of database system utilities. 14) Explain the following terms given below with examples: a) entity b) entity type c) entity set
  • 88. Weak entity and ER diagram concepts Attach Handwritten notes
  • 89. Specialization and Generalisation *As the complexity of data increased in the late 1980’s, it became more and more difficult to use the traditional ER model for database designing. Hence some improvements or enhancements were made to the existing ER model to make it able to handle complexity. *Hence as a part of the enhanced ER model, along with other improvements, three new concepts were added to the existing ER model, they were 1) Generalisation 2) Specialisation 3) Aggregation.
  • 90. 1) Generalisation *Generalisation is the process of extracting common properties from a set of entities and create a generalized entity from it. *It is a bottom up approach, in which two or more entities can be generalized to a higher level entity if they have some common attributes.
  • 91. 2)Specialisation * An entity is divided into sub entities based on their properties, *It is a top-down approach where higher level entity is divided into two or more lower level entities. The concepts of generalisation and specialisation are the class hierarchies of “is a” relationship. The student and faculty entities are called as “subclass” and person entity is called as “superclass”.
  • 92. 3) Aggregation Aggregation in DBMS is the process of combining two or more entities to form a more meaningful new entity. Training center Course offers Person Person enquires about both training center and courses provided. So both the entities will be combined to form a new entity. enqui res New entity
  • 93. Alternative notation for ER diagram ((Min,Max) notation) Each student can enrol minimum 1 and maximum3 courses, and each course can have maximum 25 students.
  • 96. Draw the ER diagram for the given problem statement:- The company database keeps track of company’s employee, department, and projects. We store employees name, SSN, address, salary, gender, date of birth, and age. An employee is assigned to one department, but may work on several projects which are not necessarily controlled by the same department. A particular employee manages the department. Each department has a unique name, unique number and several locations. The department controls number of projects each of which has a unique name, unique number and single location. We want to keep track of the dependents of each employee for insurance purpose. We keep each dependents first name, sex, birth date, and relationship to employee.
  • 97. 1) Draw an ER diagram for an AIRLINES database schema with atleast five entities. Also specify primary key and structural constraints. 2) 3) Draw an ER diagram of banking database. Assume your own entities (minimum 4), attributes and relationships. 4) Write an diagram to represent CAR entity type with 2 key attributes registration and vehicle ID.

Editor's Notes

  • #31: "Optimizing" is the process of making something as effective, efficient, or functional as possible.
  • #32: "module" is used to denote a unit of software that performs a specific function or set of related functions within the larger DBMS system.
  • #36: "Reliability" in English refers to the quality of being trustworthy, consistent, and dependable.
  • #37: When a student is on probation, it means they're in trouble academically because their grades aren't good enough. They have a limited time to improve or they could face more serious consequences, like being suspended or kicked out of school.
  • #47: a schema is a blueprint or architecture that defines the structure, organization, and constraints of the data stored within the database.
  • #94: https://www.youtube.com/watch?v=hRJcCpiZ3Ps
  • #95: https://www.youtube.com/watch?v=aoQn5gyBmRY&t=12s
  • #96: https://www.youtube.com/watch?v=ELRLtOFmmyI https://www.youtube.com/watch?v=0_KMAMSJ2S4&list=PLLvMeTj6S3VxukmiKc8erMXE-3L3xEGxX&index=13