Introduction
A historical perspective of database management systems, from the Integrated Data Store to the relational and object-oriented models.
A Database Management System (DBMS) is a software system that allows users to store, manage, and access data efficiently and effectively.
A historical perspective of database management systems, from the Integrated Data Store to the relational and object-oriented models.
Compare file processing systems with a DBMS and see why a DBMS is preferred.
Learn the categories of data models: object-based, semi-structured, hierarchical, network and relational.
Understand the physical, logical and view levels of data abstraction.
Learn the query processor and storage manager that form the DBMS architecture.
Learn the steps of the database design process.
Learn how entity-relationship diagrams model data and its relationships.
Learn the different types of attributes of an entity.
Learn entities and entity sets.
Learn relationships between entities and their constraints.
Learn extended ER features such as weak entities, class hierarchies and aggregation.
Learn the relational model: relations, tuples and attributes, with its advantages.
Learn key, domain and referential integrity constraints on relations.
Learn how a DBMS enforces integrity constraints on insert, delete and update.
Learn how the data in relations is queried.
Learn what views are and how they are created and used.
Learn the selection, projection, set and division operators of relational algebra.
Learn the non-procedural query language based on tuple variables.
Learn the SELECT-FROM-WHERE form of a basic SQL query.
Combine the results of two queries using UNION.
Find the rows common to two queries using INTERSECT.
Find rows present in one result but not in another using EXCEPT.
Learn aggregate functions such as COUNT, SUM, AVG, MAX and MIN.
Learn how complex integrity constraints are specified in SQL.
Learn about Triggers and Active databases.
Understand the anomalies caused by redundant data.
Learn how decomposition removes redundancy and what problems it can cause.
Learn functional dependencies, attribute closure and reasoning about them.
Learn what normalization is and the purpose of normal forms.
Learn the first normal form and how to convert a relation into 1NF.
Learn the second normal form and partial dependencies.
Learn the third normal form and transitive dependencies.
Learn the Boyce-Codd Normal Form.
Learn multivalued dependencies and the fourth normal form.
Learn the Fifth Normal Form (5NF).
Learn the sixth normal form.
Learn what a transaction is and the ACID properties.
Learn the states a transaction passes through.
Learn the Implementation of Atomicity and Durability.
Learn why transactions run concurrently and the problems it can cause.
Learn conflict and view serializability of schedules.
Learn recoverable and cascadeless schedules.
Learn how isolation between transactions is implemented.
Learn locking and the two-phase locking protocol.
Learn concurrency control using timestamps.
Learn optimistic concurrency control using validation.
Learn locking at different levels of granularity.
Learn log-based recovery and how atomicity is ensured.
Learn recovery when several transactions run concurrently.
Learn how data is stored on external storage devices.
Learn file organizations and the basics of indexing.
Learn clustered indexes.
Learn primary indexes.
Learn secondary indexes and how they speed up searches on non-key fields.
Learn the data structures used to build indexes, such as hash-based and tree-based indexes.
Compare file organizations and indexes, and learn how they affect performance.
Learn the indexed sequential access method (ISAM) and its structure.
Learn the B+ tree, a dynamic index structure, and its search, insert and delete operations.