0% found this document useful (0 votes)
112 views

Relational Database: Storing and Manipulating Records

The document discusses relational databases and database management systems (DBMS). It defines key concepts like databases, tables, rows, columns, primary keys, and foreign keys. It provides examples of common DBMS like MySQL, SQLite, and PostgreSQL. It also discusses the components of a table including records, fields, and data items. Finally, it briefly explains concepts like degrees and cardinality of tables as well as different types of keys.

Uploaded by

a
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
112 views

Relational Database: Storing and Manipulating Records

The document discusses relational databases and database management systems (DBMS). It defines key concepts like databases, tables, rows, columns, primary keys, and foreign keys. It provides examples of common DBMS like MySQL, SQLite, and PostgreSQL. It also discusses the components of a table including records, fields, and data items. Finally, it briefly explains concepts like degrees and cardinality of tables as well as different types of keys.

Uploaded by

a
Copyright
© © All Rights Reserved
Available Formats
Download as PDF, TXT or read online on Scribd
You are on page 1/ 34

VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


RELATIONAL DATABASE
Storing and manipulating records
DATABASE
May be defined as a collection of interrelated

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

data stored together to serve multiple application
 It is computer based record keeping system.

 It not only allows to store but also allows us


modification of data as per requirements.
DBMS
A DBMS refers to Database Management System

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

 It is a software that is responsible for storing,


manipulating, maintaining and utilizing
database.
 A database along with the a DBMS is referred to
as a database system.
 There are various DBMS software available in
the market like :-
 Oracle, MS SQL Server, MySQL, Sybase,
PostgreSQL, SQLite
VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR
PURPOSE OF DBMS
RELATIONAL DATABASE MODEL
In relational database model data is organized

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

into table (i.e. rows and columns).
 These tables are also known as relations.

 A row in a table represent relationship among a


set of values.
 A column represent the field/attributes related to
relation under which information will be stored.
 For example if we want to store details of
students then : Roll, Name, Class, Section, etc.
will be the column/attributes and the collection of
all the column information will become a
Row/Record
SAMPLE TABLES
EMPLOYEE

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
EMPNO ENAME GENDER DEPTNO SALARY COMM
1 ANKITA F 10 20000 1200
2 SUJEET M 20 24000
3 VIJAYA F 10 28000 2000
4 NITIN M 30 18000 3000
5 VIKRAM M 30 22000 1700

DEPARTMENT
DEPTNO DNAME LOCATION
10 HR NEW YORK
20 ACCOUNTS BRAZIL
30 SALES CANADA
40 IT INDIA
COMPONENT OF A TABLE
Byte : group of 8 bits and is used to store a

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

character.
 Data Item : smallest unit of named data. It
represent one type of information
and often referred to as a field or
column information
 Record : collection of data items which
represent a complete unit of
information
 Table : collection of all Rows and Columns.
Table
Fields

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
DEPTNO DNAME LOCATION
10 HR NEW YORK
20 ACCOUNTS BRAZIL
30 SALES CANADA
40 IT INDIA

Data Items (requires 5 bytes)


Records
COMMON RDBMS
Oracle, MS SQL Server, MySQL, IBM DB2, IBM

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

Informix, SAP Sybase, Adaptive Server
Enterprise, SAP Sybase IQ, Teradata,
PostgreSQL, SQLite, etc.
 Out of these MySQL, PostgreSQL and SQLite are
Open source implementation.
COMMON RDBMS
 MySQL

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 Runs on virtually all platforms including Linux, Unix and
Windows. Popular for web based application and online
publishing. It is a part of LAMP (Linux, Apache, MySQL,
PHP) stack
 SQLite
 Relational DBMS but it is not client-server database
engine rather, it is embedded into end program. Arguably
the most widely deployed database engine as it is used by
several browsers, OS and embedded systems(Mobiles).
 PostgreSQL
 General purpose object-relational DBMS. It is the most
advanced open source database system. It is free and open
source i.e. source code is available under PostgreSQL
license, a liberal open source license.
COMMON DBMS TOOLS FOR MOBILE DEVICES
 SQL Anywhere, DB2 Everywhere, IBM Mobile

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
Database, SQL Server Compact, SQL Server
Express, Oracle DatabaseLite, SQLite, SQLBase
etc.
 Out of these SQLite is public domain open source
implementation
VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR
JUST A MINUTE…
BOOKCODE BOOKNAME PUB PRICE
B001 LET US C BPB 400

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
B002 VISUAL EEE 350
BASIC
B003 JAVA PHI 550
B004 VC++ BPB 750

Identify the following in the above table

1) Degree of Table
2) Cardinality of Table
3) Attributes of Table
4) Tuple
5) Data types of Book Code and Price (as studied in Python)
CONCEPT OF KEYS
EMPNO ENAME GENDER DEPTNO SALARY COMM
1 ANKITA F 10 20000 1200

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
2 SUJEET M 20 24000
3 VIJAYA F 10 28000 2000
4 NITIN M 30 18000 3000
5 VIKRAM M 30 22000 1700

In relation each record must be unique i.e. no two


identical records are allowed in the Database. A
key attribute identifies the record and must have
unique values. There are various types of Keys:
Primary Key, Candidate Key, Alternate Key
and Foreign Key.
KEYS
 Primary Key

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 A set of one or more attribute that can identify a record
uniquely in the relation is called Primary Key.
 There can be only 1 primary key in a table
 Allows only distinct (no duplicate) values and also forces
mandatory entry (NOT NULL) i.e. we cannot left it blank.
 Candidate Key
 In a table there can be more than one attribute which
contains unique values. These columns are known as
candidate key as they are the candidate for primary key.
 Among these database analyst select one as a primary key
based on requirement like must contain unique value,
compulsory entry and where maximum searching is done
etc.
KEYS
 Alternate Key
 In case of multiple candidate keys, one of them will
be selected as Primary Key and rest of the column

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
will serve as Alternate Key
 A Candidate Key which is not a primary key is an
Alternate Key.
 Foreign key
 Used to create relationship between two tables.
 It is a non-key attribute whose value is derived from
the Primary key of another table.
 Foreign key column will for the value in Primary key
of another table, if present then entry will be allowed
otherwise data will be rejected.
 Primary Key column table from where values will be
derived is known as Primary Table or Master Table
or Parent Table and Foreign key column table will be
Foreign Table or Detail Table or Child table
EMPLOYEE
EMPNO ENAME GENDER DEPTNO SALARY COMM
Child
1 ANKITA F 10 20000 1200 Table
2 SUJEET M 20 24000

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
3 VIJAYA F 10 28000 2000
4 NITIN M 30 18000 3000
5 VIKRAM M 30 22000 1700

DEPARTMENT
Parent
DEPTNO DNAME LOCATION
Table
10 HR NEW YORK
20 ACCOUNTS BRAZIL
30 SALES CANADA
40 IT INDIA

From the Above table definition we can observe that the


DEPTNO column of EMPLOYEE table is deriving its value
from DEPTNO of table DEPARTMENT. So we can say that the
DEPTNO of EMPLOYEE table is a foreign key whose value is
dependent upon the Primary key column DEPTNO of table
DEPARTMENT.
REFERENTIAL INTEGRITY
Used to ensure relationship between records in

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

related tables are valid and user don’t
accidentally delete or change the related data.
 Referential integrity can be applied when:
 The master table’s column is a Primary Key or has a
unique index
 The related fields have the same data type
 Both tables must belong to same database.
REFERENTIAL INTEGRITY
When referential integrity is enforced using

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

Foreign Key you must observe the following
rules:
 You cannot enter a value in Child Table which is not
available in Master Table’s Primary key column.
However you can enter NULL values in foreign key
 You cannot delete a record from Master Table if
matching record exists in related table
 You cannot modify or change the Primary Key value
in Master table if its matching record is present in
related table.
BRIEF HISTORY OF MYSQL
 MySQL is freely available open source RDBMS
 Can be downloaded from www.mysql.org

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 In MySQL information is stored in Tables.
 Provides features that support secure environment
for storing, maintaining and accessing data.
 It is fast, reliable, scalable alternative to many of the
commercial RDBMS today.
 Create and supported by MySQL AB, a company
based in Sweden. This company is now subsidiary of
Sun Microsystems. On April 2009 Oracle Corp.
acquires Sun Microsystems.
 The chief inventor of MySQL was Michael
Widenius(a.k.a Monty). MySQL has been named after
Monty’s daughter My. The logo of MySQL is dolphin
and name of that dolphin is ‘Sakila’
MYSQL DATABASE SYSTEM
MySQL database system refers to the

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

combination of a MySQL server instance and
MySQL database.
 It operates using Client/Server architecture in
which the server runs on the machine containing
the database and client connects to server over a
network
 MySQL is a multiuser database system, meaning
several users can access the database
simultaneously
MYSQL DATABASE SYSTEM
The Server

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

 Listens for client requests coming in over the
network and access the database as per the
requirements and provide the requested information
to the Client
 The Client
 Are the programs that connect to MySQL server and
sends requests to the server and receives the
response of Server. Client may be the MySQL prompt
or it may be Front-end programming which connect
to server programmatically like connecting to MySQL
using Python Language or Java or any other
language
FEATURES OF MYSQL
 Speed

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 MySQL runs very fast.
 Ease of Use
 Can be managed from command line or GUI
 Cost
 Is available free of cost. It is Open Source
 Query language Support
 Supports SQL
 Portability
 Can be run on any platform and supported by various
compilers
 Data Types
 Supports various data types like Numbers, Char etc.
FEATURES OF MYSQL
 Security

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 Offers privileges and password systems that is very flexible
and secure.
 Scalability and Limits
 Can handle large databases. Some of real life MySQL
databases contains millions of records.
 Connectivity
 Clients can connect to MySQL using drivers
 Localization
 The server can provide error message to client in many
language
 Client and Tools
 Provides several client and utility programs. Like
mysqldump and mysqladmin. GUI tools like MySQL
Administration and Query Browser
Enter the
password
given
STARTING MYSQL during
installation

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
Click on Start → All Programs → MySQL →
MySQL Server → MySQL Command Line Client
mysql> prompt
means now MySQL
is ready to take your
command and
execute

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
To exit from MySQL type exit or quit in front
of mysql prompt
SQL AND MYSQL
SQL stands for Structured Query Language.

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

 Is a language that enables you to create and


operate on relational databases.
 MySQL uses SQL in order to access databases.

➢ It is the standard language used by almost all the


database s/w vendors.
➢ Pronounced as SEQUEL

➢ Original version was developed by IBM’s


Almanden Research Center
➢ Latest ISO standard of SQL was released in 2008
and named as SQL:2008
PROCESSING CAPABILITIES OF SQL

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
➢ DDL (Data Definition Language)

➢ DML (Data Manipulation Language)

➢ Embedded DML

➢ View

➢ Authorization

➢ Integrity

➢ Transaction Control
DATA DEFINITION LANGUAGE
It allows to create database objects like creating

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

a table, view or any other database objects.
➢ The information about created objects are stored
in special file called DATA DICTIONARY
➢ DATA DICTIONARY contains metadata i.e. data
about data.
➢ While creating a table DDL allows to specify –
name of table, attributes, data types of each
attribute, may define range of values that
attributes can store, etc
➢ Major commands of DDL are – CREATE,
ALTER, DROP
DATA MANIPULATION LANGUAGE
➢ It allows to perform following operation on

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
table
✓ Retrieval of information stored in table
✓ Insertion of new data in table
✓ Modification of existing data in table
✓ Deletion of existing data from table
➢ DML is of 2 type
✓ Procedural DML (in this we specify what data is
needed and how to get it)
✓ Non-Procedural DML (in this we specify what
data is needed without specifying how to get it)
➢ Main DML commands are – SELECT,
INSERT, UPDATE AND DELETE
TCL COMMANDS
 Stands for Transaction Control Language

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &
 MySQL transaction allows you to execute a set
of MySQL operations to ensure that the
database never contains the result of partial
operations. In a set of operations, if one of them
fails, the rollback occurs to restore the database
to its original state. For example Transfer of
money from one account to another etc.
 It follows ACID property (Atomicity, Consistency,
Isolation and Durability)
 Commands used for managing the Transaction
are: COMMIT, ROLLBACK, SAVEPOINT and
SET TRANSACTION
TCL COMMANDS
Commit

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

 To save the current transaction
 RollBack
 To undo/cancel the current transaction activity
 Savepoint
 To insert a Flag/Bookmark in various stages of
Transaction, so that later on we can rollback from
any given savepoint
 Set Transaction
 To specify the properties of current Transaction
 Start Transaction
 To start transaction acitivity
TCL COMMANDS
By default, MySQL automatically commits the

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

changes permanently to the database. To force
MySQL not to commit changes automatically,
you use the following statement:
Set autocommit = 0 Or
Set autocommit = OFF
To start again
Set autocommit = 1 Or
Set autocommit = ON
JUST A MINUTE…
What is Database? What are the advantages of

SACHIN BHARDWAJ, PGT(CS), KV NO.1 TEZPUR


VINOD KUMAR VERMA, PGT(CS), KV OEF KANPUR &

Database System?
 What is DDL and DML? Give examples of
command belonging to each category

You might also like