Introduction to Database

Introduction to Database Management Systems

  • The challenge of managing a large collection of data, like names and addresses, using traditional index cards.

  • Sorting and searching become complicated with increased data volume (e.g., 10,000 cards).

  • Issues arise from organizational methods (different boxes for names, cities, zip codes) and lack of coordination among clerks.

  • Introduction of computer-based solutions for data management.

Growth and Importance of Databases

  • The significance of databases has increased over the decades, relevant across numerous sectors: government, business, education.

  • Databases allow storage, manipulation, and retrieval of data in various environments.

  • The technology is utilized by individuals, workgroups, and organizations through network servers and enterprise applications.

  • Managers use data derived from databases for enhancing competitive advantage (e.g., analyzing enrollment data for marketing).

Historical Perspective of Database Development

  • Early 1960s: Charles Bachman developed IDS (Integrated Data Store) using a network data model.

  • Late 1960s: IBM's IMS (Information Management System) introduced a hierarchical data model.

  • 1970: Dr. Edgar F. Codd proposed the Relational database model, published principles in ACM journal.

  • Late 1970s: IBM developed SEQUEL (Structured English Query Language), leading to SQL's commercial implementation in 1979 by Relational Software Inc. (now Oracle).

  • ANSI and ISO promote SQL standards, ensuring industry-wide acceptance.

Basic Concepts and Definitions

Database Management System (DBMS)

  • A DBMS allows users to design, create, access, maintain, and view data (e.g., Microsoft Access).

  • A database is defined as a collection of interrelated data structured for easy storage and retrieval.

  • Features of a good DBMS:

    • Common interface for data sharing

    • Tools for data storage design

    • Maintenance facilities for stored data

    • Screen creation tools for data viewing/updating

    • Query services for quick data retrieval

    • Report generation capabilities

    • Utilities for data security, backup, and restoration.

Data and Information

  • Data: Raw facts and concepts that can hold meaning—traditionally represented as numbers and text.

  • Modern data forms include images, sounds, and video.

  • Information: Processed data providing meaningful context to users—contextualizing data enhances utility.

Data Structure Components

  • Field: Smallest meaningful data unit, a group of characters with specific meaning.

  • Record: Collection of fields representing information about a single entity; typically stored in a database.

  • Metadata: Characteristics and properties of information including definitions, structures, and constraints of the stored data.

Example Data Representation

  • Names and attributes of individuals, showcasing how data can be organized.

Keys in a Database

  • Primary Key: Unique identifier for each entity and record.

    • Atomic PK: Single attribute as primary key.

    • Composite PK: Combination of multiple attributes.

  • Foreign Key: Field/fields in one table referencing the primary key of another table.

  • Candidate Key: Potential primary keys.

  • Alternate Key: Non-primary candidate keys.

File Processing System Overview

  • Early computers focused on calculations, not databases.

  • Traditional file processing systems had limitations leading to the transition to Database Processing Systems.

Limitations of Traditional File Processing Systems

  1. Program-Data Dependence: Changes in data structures necessitate updates across all related programs.

  2. Duplication of Data: Independent application development leads to data redundancy, complicating data integrity.

  3. Limited Data Sharing: Isolated file systems limit data accessibility between applications.

  4. Lengthy Development Times: New applications often require starting from scratch.

  5. Excessive Program Maintenance: High maintenance costs hinder the development of new applications.

Database Approach

  • Emphasizes integration and data sharing across organizations.

  • Necessitates a shift in organizational thinking, focusing on competitive information management.

Enterprise Data Model Development

  • High-level entities identified that support business activities (e.g., CUSTOMER, PRODUCT, EMPLOYEE).

  • Creation of an enterprise data model to visualize relationships among identified entities.

Entity-Relationship Diagrams

  • Used to represent and structure data relationships visually.

  • Essential for database applications—noting how entities (e.g., CUSTOMER, ORDER) relate to each other.

Implementing Relational Databases

  • Relational databases use tables to organize data, enhancing ease of data sharing across departments.

  • Good practices involve linking departments via networks (e.g., LAN) to streamline data access and decision-making.

Database Application Functionality

  • A database application may include operations like:

    1. Create new data entries.

    2. Read current data for display and reporting.

    3. Update existing database entries.

    4. Delete outdated or incorrect data.