IT 231: IT and Applications (BBA)
By the end of this session, you will be able to:
Definition: Storing data in a collection of separate, application-specific files.
Think of it like separate digital filing cabinets for each department. 🗄️
The same customer data is duplicated across departments.
customer_billing.csv
Contains: Name, Address, Bill
customer_contacts.txt
Contains: Name, Address, Phone
mailing_list.xls
Contains: Name, Address, Email
🔍 This separation created several major problems for organizations.
The same piece of information is stored in multiple places unnecessarily.
Example: A customer's address is stored in:
This wastes storage and requires multiple updates for a single change, leading to the next problem...
A direct result of redundancy. When data is not updated everywhere, it becomes inconsistent and unreliable.
A customer, Sita Rai, moves from Pokhara to Kathmandu.
Result: Which address is correct? The data cannot be trusted!
Data is scattered in different files with different formats, making it difficult to access and integrate.
Format: .xls
Format: .dat
Format: .csv
Challenge: How do you write one program to get a complete, 360-degree view of a customer?
Organizations needed a way to manage data that was centralized, consistent, and accessible.
The solution is to store all organizational data in a single, centralized location, managed by a specific software.
Database: A shared collection of logically related data.
Database Management System (DBMS): Software that controls the creation, maintenance, and use of a database (e.g., MySQL, Oracle, SQL Server).
Sales File
Acct. File
Mktg. File
...leads to...
Redundancy & Inconsistency
Sales App
Acct. App
Mktg. App
...all access...
📊 Central Database (via DBMS)
The database provides a "single source of truth" for the entire organization.
Imagine the old file-based system for vehicle ownership (the "blue book").
Problem: If you sell your scooter, the new owner's name might be updated at the Yatayat office but not in the Traffic Police's file. A traffic fine could be sent to you, the old owner! This is data inconsistency.
Solution: A modern, centralized database ensures all three departments see the same, up-to-date owner information from a single source.
In this part of today's lecture, you will be able to:
A database model is a set of rules and standards that defines the logical structure of a database.
It determines how data is stored, organized, and manipulated.
Think of it as the blueprint for a database. 📐
Before the modern relational model became standard, data was organized differently. Let's explore two influential early models.
This model organizes data in a rigid, tree-like structure.
An evolution of the hierarchical model, offering more flexibility.
Developed by E.F. Codd in 1970, this model revolutionized how we think about data.
The relational model is the basis for almost all modern database systems we use today, including MySQL, PostgreSQL, and SQL Server.
It organizes data into simple, two-dimensional tables (also called relations).
Store data about a specific entity (e.g., `Students`, `Courses`).
Represent a single instance of that entity (e.g., one specific student).
Represent an attribute of that entity (e.g., `FirstName`, `CourseID`).
Imagine a simple database for our university.
| StudentID | FirstName | LastName |
|-----------|-----------|----------|
| 101 | Anjali | Thapa |
| 102 | Bikash | Shrestha |
| EnrollmentID | StudentID | CourseID |
|--------------|-----------|----------|
| 1 | 101 | IT231 |
| 2 | 102 | IT231 |
Tables are linked together using common fields called keys (like `StudentID`).
The power of the relational model is unlocked with a special language.
SQL (Structured Query Language) is the standard language for managing and querying data in relational databases.
It allows for powerful, flexible, and easy-to-understand data manipulation.
SELECT FirstName FROM Students WHERE StudentID = 101;
-- Result: Anjali
Relational databases power many systems we use daily.
They use tables for `Users`, `Transactions`, and `Merchants`. Your transaction history is linked to your User ID, which is a key in the `Transactions` table.
Integrates data from different government bodies. It likely has tables for `Citizens`, `Documents` (like citizenship, PAN), and `Services`, all linked by a unique Citizen ID.
Questions before we wrap this hour?
Next: Unit 8 · Session 3 — Database Management Systems