Databases
USING MICROSOFT ACCESS AS A DATABASE MANAGEMENT SYSTEM (DBMS)
How do I succeed in this module?
Do all the allocated practicals for the module
Practical used to test your understanding of the material
Hands-on module:
This course has a practical exam
You have a very high probability of doing well in the module if you complete
your practicals on your own
Available resources for the module:
Notes and slides on RUConnected
Lecturer & tutors
Internet – google, YouTube, whatever makes your life easier
Objective of this Lecture
By the end of this lecture you should have an understanding of:
A Timeline of Database History
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
A Timeline of Database History
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?
Spreadsheets – Tables, Calculations, Reports, Filters etc BUT
Have Huge Setbacks:
Very slow to load data and clumsy when big
Only work well on fewer tables – imagine 1000 tables
Frustrating to work with - No easy way to combine data from multiple table
This calls for databases because:
They offer way to structure more complex data
Able to relate different tables
Able to construct complex queries and reports
What is a Database?
Data is a collection of a distinct unit of information
A database is an organized collection of structured information, or data, typically stored electronically in a
computer system OR
A collection of information that is organized so that it can be easily accessed, managed and updated
A database is a systematic collection of data
An organized collection of structured data to make it easily accessible, manageable and update
The main purpose of the database is to operate a large amount of information by storing, retrieving,
manipulating and managing data.
Examples: students records, financial records, folders in your documents, library of books/ movies, shopping
list, catalogue,
More on 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
Who is collecting information about you?
How are they doing it?
What are they going to do with it?
What is Promotion of Access to Information Act, 2000?
Promotion of Access to Information Act, 2000 (or PAIA; Act No. 2 of 2000) is a freedom of
information law in South Africa. It gives the constitutional right of access to any
information held by the State and any information held by private bodies that is required for
the exercise and protection of any rights.
Database Management System (DBMS)
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?
The database management system has promising potential advantages:
Controlling Redundancy - In file system, each application has its own private files
Integrity can be enforced - Integrity of data means that data in database is always accurate, such that incorrect
information cannot be stored in database
Inconsistency can be avoided - An inconsistent database is capable of supplying incorrect or conflicting
information
Data can be shared - data is shared by multiple applications in centralized DBMS as compared to file system
Standards can be enforced - Since DBMS is a central system, so standard can be enforced easily may be at
Company level, Department level, National level or International level
Why Do You Need a Database Management
System?
Promising potential advantages of DBMS
Restricting unauthorized access - DBMS can be enforced to restrict unauthorized user access to all information when
multiple users share a database.
Solving Enterprise Requirement than Individual Requirement - DBA can structure the database system to provide an
overall service that is “best for the enterprise”
Providing Backup and Recovery - DBMS provides facilities for recovering from hardware or software failures
Cost of developing and maintaining system is lower - Although the initial cost of setting up of a database can be large,
but the cost of developing and maintaining application programs to be far lower than for similar service using
conventional systems.
Data Model can be developed - The centralized system is able to represent the complex data and interfile relationships,
which results better data modeling properties.
Concurrency Control - DBMS systems provide mechanisms to provide concurrent access of data to multiple users
Your assignment? Find out the setbacks of having a DBMS
What can a DBMS handle?
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
- Multiple tables are related to each other by
sharing data fields
- The GLUE in a relational database:
Foreign Keys (FK)
- To relate two tables, the ___PK__ of one
table is used as a connecting or _____FK___
in another table.
- The advantage of this is that, because they
are related, it is easy to find data in both
What next?
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