Database Management Systems
Class Outline and Teaching Materials
sqlite and mysql sample databases
- Question: managing contacts / classroom-hour-arrangement /
university registration system / library
- Essential SQL Terms:
A /
B /
- SQLite Tutorial
- LiteCLI : color themes,
the less pager,
GNU readline key cheat sheet
- about quoting:
A,
B,
C
- regular expressions,
regexp for sqlite3
- Generating ER Diagrams directly from *.sql files without even installing mysql
- mysql setup + DBeaver
- The Barrier to Exit - Scott McNealy on the #1 Reason for Choosing Open Source Software
-
Embrace, Extend and Extinguish
- Export SQLite Database To a CSV File
- Transactions:
- DDL/DML/DQL/DCL/TCL
Theoretical Concepts in Relational Databases
- basic math terminology:
terms about sets;
Cartesian products;
binary relations
- Relational Algebra
- The Entity-Relationship Model
- Crow's Foot Notation:
Vertabelo,
Regina
-
DBMS keys,
compound key vs composite key
- integrity constraints 1 /
integrity constraints 2 :
referencial integrity and
cascading actions of foreign keys;
when to omit foreign keys?
- mysql indexing
- Conceptual Modeling
- SQL
- join: w3schools,
left/right/inner/outer join,
picture,
cross join vs full outer join,
multiple join,
practice: dofactory
(join on non-unique columns)
- Why normal forms? example:
students and professors,
- functional dependency:
jvp /
OpenTextBC /
g4g: def, types
-
reading functional dependency from an ER diagram
- 3 normal forms:
example
- multivalued dependency:
simplified explanation,
original paper
- Normalization:
vertabelo,
Gordon,
Colostate,
Qvarnström,
"Nothing but the key"
- Difference between 3NF and BCNF:
A,
B,
C
- Relational Database Design Rules of Thumb:
Grayson /
MIT
Other Kinds of Databases
- Relational DB vs ORDB:
differences /
differences /
Gordon
- NoSQL Tutorial
- Cassandra Data Modelling - Tables
- Cassandra Data Modelling - Primary Keys
Books and Lecture Notes
- Greg's Supplementary Notes
- SQLite Tutorial
- Db2 SQL Cookbook
- Gordon College 2019 / Gordon College 2015
- George Washington Univ. 2020
- unibz 2010
- Open textbook: Database Design by Adrienne Watt
Tools
- Database Tools Catalog (some are outdated)
- sqlectron
- omnidb
- dbeaver: ER Diagrams
- 5 Open-Source SQL IDEs for You to Learn and Explore
Sample Databases
- chinook record company (sqlite)
- Sakila DVD rental (mysql); sakila for sqlite/postgresql/...
- airport (mysql)
- employees (mysql)
- classic cars (mysql)
- School Database (mysql)
- bike store (MS)
- database schema design exercise: CD catalog
- database schema design exercise: library
- database schema design exercises: manufacturer ; car dealership
- many database schema design exercises
- Collection: SQL Server Sample Databases
(back to course homepage)