Computer Science
>
>

CS 186 Introduction to Database Systems

Spring 2023

UC Berkeley

This project-heavy course covers access methods, data models, query languages, database services, and interfaces. It introduces transaction processing and requires CS 61A, CS 61B, and CS 61C as prerequisites/corequisites. It suggests proficiency in Java for project work.

Course Page

Overview

Access methods and file systems to facilitate data access. Hierarchical, network, relational, and object-oriented data models. Query languages for models. Embedding query languages in programming languages. Database services including protection, integrity control, and alternative views of data. High-level interfaces including application generators, browsers, and report writers. Introduction to transaction processing. Database system implementation to be done as term project.

Prerequisites

We will expect students to have taken CS 61A, CS 61B, and CS 61C. CS61A/B will be enforced as a prerequisite, and CS61C will be enforced as a corequisite. This class is project-heavy, and there will almost always be a project assigned to you throughout the semester. Students have noted an increase in difficulty compared to offerings of this course predating Fall 2018. We expect proficiency with Java (around the level taught in CS 61B) in order to work on the projects, with the exception of Project 1. Projects vary in difficulty. You can find more information about them in the Projects section below.

Learning objectives

No data.

Textbooks and other notes

There is no required textbook for this class, and we will not be assigning required readings. However, if you would like to use a textbook while in this class, we recommend the following:

Note that exams and all other aspects of the course will center on material as covered in the lectures, so defer to course material if there are any discrepancies with the textbook(s) you are using.

If you want to try to target your reading to the topics of this class, reading assignments from previous offerings of CS 186 for the Database Management Systems textbook can be found here. Reading assignments from a database class taught at a different university by Prof. Cheung for Database Systems: The Complete Book can be found here, although the topics taught in that class differ from those taught in this class.

Other courses in Database Systems

15-415/615 Database Applications

Fall 2016

Carnegie Mellon University

CS 145 Data Management and Data Systems

Fall 2022

Stanford University

CS 245 Principles of Data-Intensive Systems

Winter 2022

Stanford University

Courseware availability

Lecture notes available at Home

Old lecture videos can be found at Resources, available on YouTube at CS186Berkeley

Projects available at Projects

Resources available at Resources

Covered concepts