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
-
The Relational Data Model and Relational Algebra
-
Standard Query Language (SQL)
-
The Entity-Relationship Data Model
-
Database Design Theory
-
Database Application Development
-
Database Security
Textbook
R. Ramakrishnan, J. Gehrke,
"Database Management Systems", 3rd edition.
Grading
-
Final Exam: 40%
-
Midterm: 30%
-
Homework Assignments: 6 x 5%
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
Mon/Wed 8:30-9:45pm, ONLINE
Schedule
Date |
Lecture |
Reading |
Mon Jan 24 |
Course Overview and Introduction to Relational Model
(slides)
(handouts)
|
Textbook: Chapter 1 - all
Exercises: all except 1.5, 1.6, 1.9
|
Wed Jan 26 |
Relational Algebra
(slides)
(handouts)
|
Textbook: Chapter 4 - 4.1, 4.2
Exercises: 4.1-4.5 (skip the parts on calculus)
|
Mon Jan 31 |
Relational Algebra Practice Queries
(slides)
(handouts)
|
Homework 1 (pdf)
|
Wed Feb 2 |
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
|
Feb 7 - Feb 16 |
No Classes - COVID - will make up classes on 3/4 and 3/11
|
|
Mon Feb 21 |
No Class - Public Holiday
|
|
Wed Feb 23 |
Introduction to SQL. (contd.)
|
Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
Homework 2 (pdf)
|
Mon Feb 28 |
Intro to SQL - Practice Queries
(slides)
(handouts)
|
Homework 1 Solution (pdf)
|
Wed Mar 2 |
SQL Nested Queries
(slides)
(handouts)
|
Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
|
Fri Mar 4 - Make-Up Class |
SQL Division
(slides)
(handouts)
Oracle SQLPlus Lab
|
Textbook: Chapter 4 - 4.2.5, Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
|
Mon Mar 7 |
SQL Aggregate Queries
(slides)
(handouts)
|
Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
|
Wed Mar 9 |
SQL Aggregates - Practice Queries
(slides)
(handouts)
Solution HW2 (HW2.sql)
|
Textbook: Chapter 5 - 5.1-5.7
Exercises: 5.1-5.5, 5.7-5.8
|
Mon Mar 21 |
Midterm Review
|
Midterm Practice (pdf) and solution (pdf)
|
Wed Mar 23 |
Midterm Exam (Zoom)
(pdf) and solution
(pdf)
|
|
Fri Mar 25 - Make-Up Class |
Null Values. SQL Constraints
(slides)
(handouts)
Views
(slides)
(handouts)
|
Textbook: Chapter 5 - 5.1-5.7
Chapter 3 - 3.2-3.3
Exercises: 5.1-5.5, 5.7-5.8
Textbook: Chapter 3: 3.6 and 3.7
|
Mon Mar 28 |
Entity-Relationship Model
(slides)
(handouts)
(sample question)
|
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
Homework 3 (pdf)
|
Wed Mar 30 |
Entity-Relationship Model (contd.)
|
|
Mon Apr 04 |
Database Application Development: JDBC
(slides)
(handouts)
JDBC Oracle Driver,
P1,
P2,
P3
schema
|
|
Wed Apr 06 |
Database Application Development: JDBC - Lab
|
|
Mon Apr 11 |
Database Application Development - Oracle PL/SQL
(slides)
(handouts)
|
See "Links" section for documentation
Homework 3 Solution (pdf)
Homework 4 (pdf)
|
Wed Apr 13 |
PL/SQL Lab
table.sql
function.sql,
procedure.sql,
func_main.sql,
proc_main.sql
|
See "Links" section for documentation
|
Mon Apr 18 |
No Class (Holiday)
|
|
Wed Apr 20 |
Schema Refinement and Normal Forms
(slides)
(handouts)
(example 1)
(example 2)
|
Textbook: Chapter 19 - 19.1-19.6
Exercises: 19.2, 19.5, 19.7
|
Mon Apr 25 |
No Class - Conference Travel
|
Homework 5 (pdf)
|
Wed Apr 27 |
BCNF and 3NF. Decompositions
(slides)
(handouts)
|
Textbook: Chapter 19 - 19.1-19.6
Exercises: 19.2, 19.5, 19.7
|
Mon May 2 |
Security and Authorization
(slides)
(handouts) |
Chapter 21
Homework 6 (pdf)
|
Wed May 4 |
Security and Authorization (contd.)
| Chapter 21
|
Mon May 09 |
Extra BCNF/Authorization Practice
|
|
Wed May 11 |
Course Evaluation. Final Exam Review
(pdf)
and Solution
(pdf)
|
Homework 6 Solution (pdf)
|