Relational Databases

CSC 342 - Web Technologies

Database Overview

  • A database is a collection of related data organized in a way that supports easily processing the data

  • A Database Management System (DBMS) is software that provides the ability to create and manipulate a database

  • Examples of DBMSs: MySQL, PostgreSQL, MongoDB, Microsoft SQL Server, SQLite

Relational Databases

  • A relational database models data as relations

  • A relation is organized as a table of columns and rows

  • Each column is also called an attribute

  • Each row is also called a record

  • Each row includes a unique key to identify that row

Database Languages

  • Data definition language: defines the data types and relationships among them

  • Data manipulation language: performs operations such as inserting, updating, or deleting data.

  • Query language: performs information retrieval

SQL

  • The Structured Query Language (SQL) combines the roles of all database languages into a single language for relational databases

  • SQL is a declarative programming language

  • A declarative programming language describes what computation should be performed not how to compute it

Relational Database Normalization

  • Normalization is a systematic approach to organizing relational database tables to eliminate data redundancy and data manipulation anomalies

  • Types of anomalies:

    • Update Anomaly

    • Insertion Anomaly

    • Deletions Anomaly