Database Systems - Lec 1
Database Systems - Lec 1
Database Systems - Lec 1
Lecture #1
Topic: Introduction to Database Management Systems
Instructor: Dr Ayesha Naseer
Course Learning Objectives
CS-220 Database Systems
Course Learning Outcomes (CLOs)
At the end of the course the students will be able to: PLOs BT Level*
1 Explain database architecture, relational database management systems based on 1
real-life databases. C2
3 Analyze the database anomalies and breaks down relations using Normalization 4 C4
rules.
4 Formulate SQL query to access data within the relational databases. 5 C3
5 Use structured Query Language (SQL) to manage database systems and 5
extracting data efficiently. P4
Course Material
Course Contents
Week/ Lec Topic CLOs
ER Assistant - ERD
UML - ERD
Features of Database Management Systems
2. Nonprocedural Access
The most important feature of a DBMS is the ability to answer queries. A query
is a request for data to answer a question. For example, the user may want to
know customers having large balances or products with strong sales in a
particular region.
Nonprocedural access allows users with limited computing skills to submit
queries. The user specifies the parts of a database to retrieve, not
implementation details of how retrieval occurs. Implementation details involve
coding complex procedures with loops.
Nonprocedural languages do not have looping statements (for, while, and so on)
because only the parts of a database to retrieve are specified.
Features of Database Management Systems
3. Procedural Language Interface
▪ Procedural Language Interface is a method to combine a nonprocedural language
such as SQL with a programming language.
▪ DBMSs provide the full capabilities of a programming language. For example JAVA
Script integrated with SQL Server/My SQL. Java script allows full customization of
database access, form processing, and report generation.
▪ Most commercial DBMSs have a procedural language interface. For example, Oracle
has the language PL/SQL and Microsoft SQL Server has the language Transact-SQL.
Features of Database Management Systems
4. Transaction processing
▪ Transaction processing enables a DBMS to process large volumes of repetitive work.
▪ A transaction is a unit of work that should be processed reliably without
interference from other users and without loss of data due to failures. Examples of
transactions are withdrawing cash at an ATM, making an airline reservation, and
registering for a course.
▪ A DBMS ensures that transactions are free of interference from other users, parts of
a transaction are not lost due to a failure, and transactions do not make the
database inconsistent.
Features of Database Management Systems
5. Database Tuning
▪ In addition to features provided directly by vendors of DBMSs, third-party software is
also available for many DBMSs.
▪ In most cases, third-party software extends the features available with the database
software. For example, many third-party vendors provide advanced database design
tools that extend the database definition and tuning capabilities provided by DBMSs.
Internal Schema
Distributed Processing and the Client-Server Architecture
▪ With the growing importance of network computing and the Internet, distributed
processing is becoming a crucial function of DBMSs. Distributed processing allows
geographically dispersed computers to cooperate when providing data access.
▪ Many DBMSs support distributed processing using a client-server architecture. A
client is a program that submits requests to a server. A server processes requests on
behalf of a client.
Career Opportunities Related to Database Application development
and database administration
▪ Because databases are pervasive, there are a variety of ways in which you may
interact with databases.
▪ The classification in following figure distinguishes between functional users who
interact with databases as part of their work and information systems professionals
who participate in designing and implementing databases. Each box in the hierarchy
represents a role that you may play. You may simultaneously play more than one
role.
Career Opportunities Related to Database Application development
and database administration
▪ Functional users can play a passive or an active role when interacting with databases.
▪ Indirect usage of a database is a passive role. An indirect user is given a report or some data extracted
from a database.
▪ A parametric user is more active than an indirect user. A parametric user requests existing forms or
reports using parameters, input values that change from usage to usage. For example, a parameter
may indicate a date range, sales territory, or department name.
▪ The power user is the most active. Because decision-making needs can be difficult to predict, ad hoc
or unplanned usage of a database is important. A power user is skilled enough to build a form or
report when needed.
▪ Information systems professionals interact with databases as part of developing an information
system.
▪ Analyst/programmers are responsible for collecting requirements, designing applications, and
implementing information systems.
▪ Database administrators assist both information systems professionals and functional users. Database
administrators have a variety of both technical and nontechnical responsibilities . Technical skills are
more detail-oriented; nontechnical responsibilities are more people-oriented.
▪ Information resource management is a response to the challenge of effectively utilizing information
technology. The goal of information resource management is to use information technology as a tool
for processing, distributing, and integrating information throughout an organization.
Database Development Process
Phases of Database development
1. Conceptual Data Modeling
The conceptual data modeling phase uses data requirements and produces entity relationship
diagrams (ERDs) for the conceptual schema and for each external schema. Data requirements can have
many formats such as interviews with users, documentation of existing systems, and proposed forms
and reports. The conceptual schema should represent all the requirements and formats.