CS 3200: Introduction to Databases

John Rachlin

When Section 02: TF 1:35p-3:15p ET/Boston
Section 33: 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 Wed/Thu 1:30p-4:30p 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.



Bella Chin
      
Komal Jain
      
Eddie Lowney
      
Katya Luchette

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. 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 generally prohibited but with each assignment I may proscribe specific ways in which AI may be used ethically and responsibly. When in doubt, assume that use of AI is not allowed.

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 (2-4 students per group): 25%
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 9 Intro: Why study databases?
The Marine Biologist Story
2 Jan 13 Concepts: The database environment
Jan 16 MySQL up and running, Basic SQL
3 Jan 20 More SQL on a single table HW1:Concepts
Jan 23 SQL Basics. Aggregation functions.
4 Jan 27 More Aggregation: GROUP BY, HAVING + Data Import
Jan 30 Views and Subqueries, Lab 06
5 Feb 3 More Subqueries, SQL Review
Feb 6 Data Types: varchar, int, date, etc. HW2:Genes and Disease
6 Feb 10 DDL: Creating Tables, Inserting Records
Feb 13 Conceptual Modeling
7 Feb 17 Logical Modeling
Feb 20 More Logical Modeling HW3: SceneSense
8 Feb 24 Normalization
Feb 27 TBD
9 Mar 10 SQL Join Basics
"Consider the following Venn Diagram..."
HW4: Books that will change your life
Mar 13 Advanced Joins
10 Mar 17 Indexing
Mar 20 Stored Programs I
11 Mar 24 Stored Programs II Required Project:
Declare Group, Title, Abstract.
Submit Details to Gradescope
Project Due: April 7th (No Extensions!)
Mar 27 ACID Transactions, Serialization HW5: Adverse-Drug Reactions
12 Mar 31 Locking and Deadlocks
Apr 3 Programmings with Databases
Database APIs = ♥
13 Apr 7 NoSQL
Apr 10 Databases 2025: Poster Session I Project Posters Due Thursday 4/9 @ 11:59pm (No Extensions!)
14 Apr 14 Databases 2025: Poster Session II
Apr 17 The future of databases
Wrap-up Remarks
Trace

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.