Databases - Lecture 1
Databases - Lecture 1
1960s : Computerized database started in the 1960s, when the use of computers became a more cost-effective option
for private organizations
Charles W. Bachman designed the Integrated Database System, the “first” DBMS.
1970s:Two major relational database system prototypes were created between the years 1974 & 1977
Ingres used a query language known as QUEL
System R used the SEQUEL query language
1976: A new database model called Entity-Relationship, or ER, was proposed by P. Chen this year.
1980s: Structured Query Language (SQL) became the standard query language - read it like “sequel”
Relational database systems became a commercial success
A Timeline of Database History
Early 1990s: new client tools for application development were released
Oracle Developer, PowerBuilder, VB, and others
Mid 1990s: Advent of the Internet - Average desktop users began to use client-server database systems to access
computer systems that contained legacy data.
Late 1990s: Rise in demand for Internet database connectors, such as Front Page, Active Server Pages, Java
Servelets, Dream Weaver, ColdFusion, Enterprise Java Beans, and Oracle Developer 2000
2000s:New interactive applications were developed for PDAs, point-of-sale transactions, and consolidation of
vendors
Today: databases are everywhere and are used to enhance our day-to-day life
From personal cloud storage to predicting the weather, many of the services we utilize today are possible due to databases
Potential Alternatives to Databases?
Websites :– E-Bay, Amazon, Takealot, banks (account holder details & transactions & credit records)
Airlines use databases to store and access information about flight schedules and reservations
Supermarkets point of sale
Forensics
Issues of privacy & Security
The integrity and privacy of data are at risk from unauthorized users, external sources listening in on the network,
and internal users giving away the store
Data Tampering - an unauthorized party on the network intercepts data in transit and modified or viewed it
Eavesdropping and Data Theft - information such as credit card numbers can be stolen
Falsifying User Identities
Password-Related Threats
Unauthorized Access to Tables and Columns - database may contain confidential tables, or confidential columns in a table,
which should not be available indiscriminately to all users authorized to access the database
Unauthorized Access to Data Rows - Certain data rows may contain confidential information which should not be available
indiscriminately to users
Lack of Accountability
Issues of privacy & Security
A database management system (DBMS) is an application software that interacts with user and other application
programs designed to define, capture, manipulate, retrieve and manage data in a database
DBMS generally manipulates the data itself, the data format, field names, record structure and file structure.
It also defines rules to validate and manipulate this data.
E.g: MySQL, PostgreSQL, Oracle, Microsoft SQL Server, Libre office base, Microsoft Access
Database Management System (DBMS)
Why Do You Need a DBMS?
Data Entry And Update: – add data, change data and delete data
Queries:– ask complex questions about the data in the database
Forms: – produce attractive and useful forms for entering, viewing and updating data
Reports:– create sophisticated reports for presenting data
Database Model
A database model shows the logical structure of a database, including the relationships and constraints that determine how data
can be stored and accessed
Individual database models are designed based on the rules and concepts of whichever broader data model the designers adopt
Some of the most common ones include
Hierarchical database model
Relational model – Relevant for this module
Network model
Object-oriented database model
Entity-relationship model
Document model
Entity-attribute-value model
Star schema
The object-relational model, which combines the two that make up its name
Relational Model
Relational model sorts data into tables(relations), each of which consists of columns and rows
A database table consists of rows and columns. Different tables contain information about different types of things.
Each row in a database table represents one instance of the type of object described in that table. A row is also called
a record.
The columns in a table are the set of facts that we keep track of about that type of object. A column is also called an
attribute.
Each column lists an attribute (characteristic)of the entity in question which describes the instances(records) in the
column of a database., such student ID, Firstname lastname, etc
Together, the attributes in a relation are called a domain
An attribute or combination of attributes that uniquely identify each table record is a primary key
If this unique attribute (key) is referenced in a another table it is called a foreign key
Each row (tuple) includes data about a specific instance of the entity in question, e.g particular employee.
- An Example of a Relational Database
Once you have created a database and entered the relevant data, you can sort, retrieve and use/
manipulate the data
retrieving data: Specific information can be obtained by retrieving (fetching) data that matches certain criteria.
This can be done by using a filter or a query
Summary
Background/History
Define what a database is?
Explain what a database management system is?
Understand why RDBM is essential
Know different types of model
Understand the difference between a relational model and a relational database
Essential features of a relational database :- primary, key, foreign key, attribute, instance
Common database operations