CS 3200: Introduction to Databases

John Rachlin

When Section 02: TF 1:35p-3:15p ET/Boston
Section 30: TF 3:25p-5:05p ET/Boston
Where Online on Zoom (See Canvas for connection details.)
GradeScope Submit homework
Piazza The discussion board and latest office hours.
E-mail j.rachlin@northeastern.edu
Web https://www.khoury.northeastern.edu/home/rachlin
My Office Hours Mon/Thu 12p-3p ET/Boston on Zoom and by appointment only.
Click here to reserve 20m for one-on-one help
Please email me your availability for other times.

Teaching Assistants and TA Office Hours

TA office hours will be held throughout the week. See Piazza for details.
No office hours on University Holidays
No appointment is necessary for TA office hours.



Lily Hoffman
      
Nathan Parker
      
Vivek Rachakonda
      
Kelsey Wandera

Course Information

Course Description

This course presents how to design a relational database from requirements gathering, to conceptual and logical modeling. We also cover how to query databases using SQL, the ACID properties of a relational database management system, and fundamentals of database programming using triggers, stored procedures, functions, and events. Advanced topics include indexing, transactions, concurrency and recovery. The course will also provide an introduction to non-relational (NoSQL) databases. Students will carry out an individual data integration and analysis project. Upon completion of the course, students will be able to:
  • Design, implement, and query a relational database
  • Write complex SQL queries, SQL functions, SQL triggers and SQL procedures
  • Connect a computer application to a commercial relational database (MySQL) and access and manipulate data from the database within the application
  • Act as database administer to a MySQL server
  • Describe ACID properties and the inner workings of transactions
  • Describe the strengths and the weaknesses of both the SQL and NoSQL DBMS

Class Participation and Class Recordings

This is an online but synchronous course with live lectures. Lectures will usually be recorded and recording will be available on Canvas..Zoom Meetings..Cloud Recordings. Please note that recordings should not be used as a substitute for coming to class. Live attendance is required and factored into your final grade. I strongly recommend that you come to every live session with your cameras on and your microphone muted. In the event you need to miss a class, I will be posting lecture notes and coding examples that evening. (Materials should be available by 8pm.)

I very much welcome active background discussion in my classrooms. To ask a question, feel free to virtually raise your hand or post your question on chat. And if you know the answer, go ahead and respond!

Recommended Reading

Title Murach(2023) : Murach's MySQL 4rd Edition.
Buy online Amazon.com
Description Highly recommended. A very popular overview of MySQL including database administration, database design, writing SQL queries, and implementing stored programs.


Title Lemahieu, vanden Broucke (2018): Principles of Database Management
Buy online Amazon.com
Description Recommended. A modern textbook on Database Systems and design. Purchase as a reference, but not critical to succeeding in the class.


Additional recommended readings may be assigned from books that are freely available to you through O'Reilly E-Books.

Homework and Late Policy

There will be 5-6 assignments and a database capstone project due near the end of the semester. The detailed dates are listed on the schedule below. Homework will be submitted on GradeScope. Homework cannot be accepted by email. My extension/late policy is very straight-forward: homework submitted 1-48 hours late receives a 10% penalty. No homeworks will be accepted more than 48 hours late. Please understand that with a class this size, maintaining a strict schedule for homework submissions and grading is paramount.

Academic Integrity (Please Read!)

Database design and formulating SQL queries is a creative process. Individuals must reach their own understanding of problems and discover paths to their solutions. Verbal discussions with fellow students is fine, but I expect each student to do their own work unless I explicitly allow for group assignments. If you share code, files, queries, or database designs you are breaking the rules. Do not, under any circumstances, share code, queries, or designs with your fellow students. This is a direct violation of the course collaboration policy.

Use of ChatGPT or other AI-assisted tools for coding, database design, or answering questions of any kind is strictly prohibited.

Please be aware that I take the issue of academic integrity very seriously. The consequences of cheating in my class are at my discretion and may include receiving a zero for the assignment or quiz, a full letter grade reduction in your final grade, or failing the course altogether. Please contact me if you have any questions about acceptable conduct BEFORE you submit your homework. And if you are stuck on an assignment, the TAs and I are here to help, or you can pose your question on Piazza. The university's academic integrity policy discusses actions regarded as violations and consequences for students: http://www.northeastern.edu/osccr/academic-integrity

Evaluation

The final grade for this course will be weighted as follows:

  • Homework: 75%
  • Database Capstone Project (3-5 students per group): 20%
  • Attendance: 5%
LetterRange
A94 - 100
A-90 - 93.9999
B+87 - 89.9999
B83 - 86.9999
B-80 - 82.9999
C+77 - 79.9999
C73 - 76.9999
C-70 - 72.9999
D+67 - 69.9999
D63 - 66.9999
D-60 - 62.9999
F<60

Schedule

Note: This schedule is subject to change and will be adjusted as needed throughout the semester.

Wk Day Topic Due
1 Jan 7 Intro: Why study databases?
The Marine Biologist Story
Jan 10 Concepts: The database environment
2 Jan 14 MySQL up and running, Basic SQL
Jan 17 More SQL on a single table HW1:Concepts
3 Jan 21 SQL Basics. Aggregation functions.
Jan 24 More Aggregation: GROUP BY, HAVING + Data Import
4 Jan 28 Views and Subqueries, Lab 06
Jan 31 More Subqueries, SQL Review
5 Feb 4 Data Types: varchar, int, date, etc. HW2:Genes and Disease
Feb 7 DDL: Creating Tables, Inserting Records
6 Feb 11 Conceptual Modeling
Feb 14 Logical Modeling
7 Feb 18 More Logical Modeling HW3: SceneSense
Feb 21 Normalization
8 Feb 25 TBD
Feb 28 SQL Join Basics
"Consider the following Venn Diagram..."
HW4: Books that will change your life
9 Mar 11 Advanced Joins
Mar 14 Indexing
10 Mar 18 Stored Programs I
Mar 21 Stored Programs II Required Project:
Declare Group, Title, Abstract.
Submit Details to Gradescope
Project Due: April 7th (No Extensions!)
11 Mar 25 ACID Transactions, Serialization HW5: Adverse-Drug Reactions
Mar 28 Locking and Deadlocks
12 Apr 1 Programmings with Databases
Database APIs = ♥
Apr 4 NoSQL
13 Apr 8 Databases 2025: Poster Session I Project Posters Due Monday 4/7 @ 11:59pm (No Extensions!)
Apr 11 Databases 2025: Poster Session II
14 Apr 15 Rachlin gets the last word. Virtual Cookies.
The story of the 2nd time he almost
got kicked out of Cornell shall be told.
TRACE EVALUTIONS: The Good, the Bad, and the Ugly.
Class will not be recorded.

Inclusive Class

Northeastern University values the diversity of our students, staff, and faculty; recognizing the important contribution each makes to our unique community.

Respect is demanded at all times throughout this course. In the classroom, not only is participation required, it is expected that everyone is treated with dignity and respect. We realize everyone comes from a different background with different experiences and abilities. Our knowledge will always be used to better everyone in the class.

We strive to create a learning environment that is welcoming to students of all backgrounds. If you feel unwelcome for any reason, please let us know so we can work to make things better. You can let us know by talking to anyone on the teaching staff. If you feel uncomfortable talking to members of the teaching staff, please consider reaching out to your academic advisor.

Northeastern is committed to providing equal access and support to all qualified students through the provision of reasonable accommodations so that each student may fully participate in the learning experience. If you have a disability that requires accommodations, please contact the Disability Resource Center http://www.northeastern.edu/drc/, DRC@northeastern.edu, 617-353-2675. Accommodations cannot be made retroactively and to receive an accommodation, a letter from the DRC or LDP is required.