CS 430/630 Database Management Systems

Spring 2018




  1. Syllabus
  2. Schedule
  3. Instructor & Contact
  4. Resources & Links

Course Objectives

The course will introduce fundamental concepts in relational databases, such as: the relational model and relational algebra; the Standard Query Language (SQL); database design theory; conceptual design; database application development; database security.

Prerequisites

Students registering for CS430/630 must have previously completed courses in data structures and discrete mathematics. Also, they are required to have working knowledge of Java and C programming languages, as well as familiarity in using the UNIX operating system.

Topics Covered

Textbook

R. Ramakrishnan, J. Gehrke, "Database Management Systems", 3rd edition.

Grading

Attendance Policy

Class attendance is mandatory, and students are expected to participate actively in class by asking and answering questions. In case of missed class, students are responsible to get up-to-date with course materials and announcements.

Student Conduct

Students are required to adhere to the University Policy on Academic Standards and Cheating, to the University Statement on Plagiarism and the Documentation of Written Work, and to the Code of Student Conduct as delineated in the University Catalog and Student Handbook. The Code is available online at http://cdn.umb.edu/images/life_on_campus/Code_of_Conduct_5-14-14.pdf

Accommodations

Section 504 of the Americans with Disabilities Act of 1990 offers guidelines for curriculum modifications and adaptations for students with documented disabilities. If applicable, students may obtain adaptation recommendations from the Ross Center for Disability Services, CC-UL Room 211, (617-287-7430). The student must present these recommendations and discuss them with each professor within a reasonable period, preferably by the end of Drop/Add period.

Venue

Tue/Thu 7:00-8:15pm, M01-0409

Schedule


Date Lecture Reading
Tue Jan 23 Course Overview and Introduction to Relational Model (slides) (handouts) Textbook: Chapter 1 - all
Exercises: all except 1.5, 1.6, 1.9
Thu Jan 25 Relational Algebra (slides) (handouts) Textbook: Chapter 4 - 4.1, 4.2
Exercises: 4.1-4.5 (skip the parts on calculus)
Tue Jan 30 Relational Algebra Practice Queries (slides) (handouts)
Thu Feb 01 Introduction to SQL. (slides) (handouts)
create.sql, insert.sql, query.sql
Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Homework 1 (pdf)
Homework 1 Solution (pdf)
Tue Feb 06 Intro to SQL - Practice Queries (slides) (handouts)
Thu Feb 08 SQL Nested Queries (slides) (handouts) Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Tue Feb 13 SQL Division (slides) (handouts) Textbook: Chapter 4 - 4.2.5, Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Thu Feb 15 SQL Aggregate Queries (slides) (handouts) Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Homework 2 (pdf)
Homework 2 Solution (Q1) (Q2)
Tue Feb 20 SQL Aggregates (contd) Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Thu Feb 22 SQL Lab: Intro to SQLPlus, Practice SQL Queries.
Tue Feb 27 SQL Aggregates - Practice Queries (slides) (handouts) Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Thu Mar 01 Null Values. SQL Constraints (slides) (handouts) Textbook: Chapter 5 - 5.1-5.7
Chapter 3 - 3.2-3.3
Exercises: 5.1-5.5, 5.7-5.8
Tue Mar 06 Views (slides) (handouts) Textbook: Chapter 3: 3.6 and 3.7
Homework 3 (pdf)
Homework 3 Solution (pdf)
Thu Mar 08 No Class (campus closed)
Tue Mar 20 Midterm Review (pdf) and solution (pdf)
Thu Mar 22 Midterm Exam (pdf) and solution (pdf)
Tue Mar 27 The Entity-Relationship (ER) Model (slides) (handouts) Textbook: Chapter 2 - all except 2.4.5, 2.5.3, 2.5.4, 2.6-2.8; Chapter 3 - 3.5 (up to 3.5.5)
Exercises: 2.2 (except Q6), 2.3, 2.4, 2.5, 2.7
Thu Mar 29 Database Application Development: JDBC (slides) (handouts)
JDBC Oracle Driver, P1, P2, P3 schema
Homework 4 (pdf)
Tue Apr 03 Database Application Development - Oracle PL/SQL (slides) (handouts)
table.sql function.sql, procedure.sql, func_main.sql, proc_main.sql
See "Links" section for documentation
Thu Apr 05 PL/SQL Practical Session.
Tue Apr 10 Schema Refinement and Normal Forms (slides) (handouts) Textbook: Chapter 19 - 19.1-19.6 Exercises: 19.2, 19.5, 19.7
Thu Apr 12 BCNF and 3NF. Decompositions (slides) (handouts) Textbook: Chapter 19 - 19.1-19.6 Exercises: 19.2, 19.5, 19.7
Tue Apr 17 Practice Exercises: BCNF and 3NF Decompositions. Homework 5 (pdf)
Thu Apr 19 Security and Authorization (slides) (handouts) Chapter 21
Tue Apr 24 Security and Authorization - Practice Questions. Homework 6 (pdf)
Homework 6 Solution (pdf)
Tue May 08 Course Evaluation. Final Exam Review (pdf) and Solution (pdf)
Homework 7 (pdf)

Instructor: Dr. Gabriel Ghinita


TA: Mohammad Hadianpour