CS 348Introduction to Database Management
- Units
- 0.50
- Faculty
- Mathematics
- Subject
- Computer Science
When it runs
- F24
- W25
- S25
- F25
- W26
- S26
- F26
- W27
- S27
Ran in 7 of the last 7 terms. Winter 2027: scheduled, 2 lecture sections. Spring 2027: schedule not out yet.
The main objective of this course is to introduce students to fundamentals of database technology by studying databases from three viewpoints: those of the database user, the database designer, and the database administrator. It teaches the use of a database management system (DBMS) by treating it as a black box, focusing only on its functionality and its interfaces. Topics include introduction to database systems, relational database systems, database design methodology, SQL and interfaces, database application development, concept of transactions, ODBC, JDBC, database tuning, database administration, and current topics (distributed databases, data warehouses, data mining).
Prerequisites
Corequisites
Antirequisites
Leads to
Fall 2026 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 6007 | 79 / 90 | TTh 10:00–11:20 |
| LEC 002 | 6551 | 72 / 89 | TTh 13:00–14:20 |
| TST 101 | 6552 | 151 / 179 | Nov 6 16:30–18:00 Oct 9 16:30–18:00 |
Winter 2027 sections
| Section | Class | Enrolled | Meets |
|---|---|---|---|
| LEC 001 | 5614 | 0 / 90 | TTh 10:00–11:20 |
| LEC 701 | 2187 | 66 / 9999 | Online or by arrangement |
| TST 101 | 6183 | 0 / 90 | Mar 5 16:30–18:00 |
Resources
Around the web
Found by uwloo’s link finder, which checks that each page names CS 348.
- CS 348: Introduction to Database Systems Course website · student.cs.uwaterloo.ca Remove
- CS 348: Introduction to Database Systems Course website · Fall 2026 · cs.uwaterloo.ca · from Sujaya Maiyya’s site Remove
- worksheet Course notes · cs.uleth.ca · from UWaterloo Links (SE) Remove
- CS348 Course Notes Course notes · jaidenratti.com · from Jaiden Ratti’s site, CS webring Remove
- Course Notes (Part I) Course notes · david-duan.me · posted on r/uwaterloo Mar 2022 Remove
- CS348 | Anthony Zhang Course notes · anthony-zhang.me · posted on r/uwaterloo Jul 2020 Remove
- CS348sample2 Course notes · student.cs.uwaterloo.ca · posted on r/uwaterloo Jul 2022 · gone now; archived copy from Aug 2022 Remove
- cs348-notes: Class notes for CS 348 in the Fall '11 term at the University of Waterloo. Course notes · github.com · by mvisser on GitHub Remove
4 more links
- Edredo for Learners - YouTube Lecture videos · youtube.com · from UWaterloo Links (SE) Remove
- SQL Fiddle - Online SQL Compiler for learning & practice Other · sqlfiddle.com · from UWaterloo Links (SE) Remove
- CS348 Other · cs.uwaterloo.ca · posted on r/uwaterloo Jul 2017 Remove
- cs348 Other · cs.uwaterloo.ca · posted on r/uwaterloo Apr 2015 Remove
2 PDFs from this site
Reviewed on UW Flow
38% liked it64% easy60% useful
From 376 ratings and 96 comments on UW Flow. The most helpful comments, quoted as written, without names. Read them all on UW Flow.
Dry lectures, outdated contents, horrendously written slides. The assignments are extremely ambiguous; piazza is a graveyard of unanswered questions. Absolutely no example is given that can help us study for exams. The midterm and final were an abomination, as other students can attest. I don't blame the TAs or the sessional instructor in our SE section, because they have no control over the course. But Toman is a living example of every negative stereotype about tenured profs and why the system should be fixed.
Aug 2022 · didn’t like it · 3 found this helpfulOn UW FlowRemove this
if someone has 1 positive thing to say about this course, i have at least 10 negative things to say. cs348 is definitely the worst course i've taken at waterloo so far and it pissed me off so much this entire term. if you're thinking of taking this course with any of the 3 profs that are rated < 30%, just drop this course and wait for a better prof.
to the person who said the slides might as well be written in greek: they are absolutely correct. anyone who tries to take the time to understand these slides and definitions might as well give up, because its genuinely impossible to understand without LLMs. istg everytime i copied and pasted a slide into gemini with a "???" appended at the…Aug 2026 · didn’t like it · 2 found this helpfulOn UW FlowRemove this
Would no recommend. The course is hardly "taught", going to lectures somehow makes it more confusing. I had to just do the bare minimum because it was so dry. No life in the content or teaching style.
Dec 2023 · didn’t like it · 2 found this helpfulOn UW FlowRemove this
Final was fucked up.
Bormin gangAug 2022 · liked it · 2 found this helpfulOn UW FlowRemove this
Took this over Spring 2022 - lectures were dry, slides were unclear, assignments needed tons of clarification before they were doable, instructors were MIA on Piazza, and the final was a long, painful 28-page marathon. The majority of the material is irrelevant - everything is done in IBM db2, and we spent two weeks learning how to embed SQL into C programs. If you don't need to take this course, please don't do this to yourself.
Aug 2022 · didn’t like it · 2 found this helpfulOn UW FlowRemove this
Discussed on r/uwaterloo
701 posts and comments in 482 threads mention CS 348, December 2011 to December 2024. Quoted word for word, newest first; each reply sits under the post and the comment that started its branch. Search r/uwaterloo for newer posts.
Fall 2024
CS 349 vs 348 vs 370 vs 442 vs 365 2 points, 6 comments
“Which one should I take for the most useful course alongside other courses (one which adds the most value to my degree)? …”
u/shrimpFriedRice49: “… Cs 348 is good if you are interested in more in-depth understanding of database operations and their effective usages. Never took 365 and 442. Quick aside, my personal favorite from 300 level cs courses is cs343 - concurrent and parallel programming. …”
Thoughts on Course Load 3 points, 11 comments
u/goose-ctrl: “CS 341 CS 348 CS 349 CS 350 ECON 424 Thoughts on the course load for these 5 courses ?”
u/_spooky_77: “from personal experience (so ymmv), cs349 is pretty free, cs348 is fine as long as david toman isn’t teaching it, cs341 and 350 might be a bit painful (341 was kinda tough for me cus I’m garbage with proofs and don’t grind leetcode), econ424 is easy according to uwflow, I’d say …”
u/_spooky_77: “cs348 with toman is probably listed on the cia torture methods handbook the lectures make no sense, simple concepts are presented in the most convoluted way possible, a lot of the content was outdated and not useful. …”
2B CS Course Selection 1 point, 1 comment
“https://preview.redd.it/nosxancxrv3e1.png?width=612&format=png&auto=webp&s=bdbc72fbc91b3301a578a69a84f06dc3a84b12bd Trying to decide which path to go for, mainly looking to maintain a decent GPA, but …”
u/amsyed10385: “… CS 348 isn’t really a good course, would prioritize 341/350 over 348. …”
Course load help 2 points, 1 comment
u/TI231: “Hi, gonna take CS486, CS348, CS 459, STAT 331 and STAT 341, is this as tough as it sounds to me 😭 ??”
UW Math Viable 2A Courseload? 14 points, 13 comments
“https://preview.redd.it/sewy50msawyd1.png?width=376&format=png&auto=webp&s=164f19f51cf2407d9f633857108cece82aac7e1c”
u/iamanaybaid555: “Are 237 and 235 really time consuming? How are those like”
u/iamanaybaid555: “Okay that sounds very reassuring considering I'll be taking it with CS 350, 341, 346 and 348. I've had a decent bit of practice from 128 and now doing a bit in STAT 231 too but will make sure to brush up on concepts before I head into term to make it a bird course for myself. …”
Spring 2024
I just retired from UW after 34 years of teaching CS (and 40 years of teaching total). Ask me anything. 503 points, 282 comments
“I just retired from UW after 34 years of teaching CS (and 40 years of teaching total). Summary: \ I published several books on number theory, combinatorics on words, and automata theory \ I published …”
u/EpicCentarus: “Have you taught cs348?”
I maintain a free list of top tech jobs 196 points, 24 comments
“Hey guys, James here (CS class of 2022). I was pretty fed up with the feeling of despair I would get whenever I used LinkedIn to find jobs, so I decided to build something better. …”
u/Hiyo42069: “Takes way too long for the jobs to load for me.”
u/james_dev_123: “… If only they had taught me this in CS 348 instead of making me write out useless math formulae...”
Trying to get into CS348 section 4072. Will give funds for dibs. 1 point, 1 comment
Trying to get into CS348 section 4072 1 point, 1 comment
Trying to get into CS348 section 4072 1 point, 1 comment
Winter 2024
2B course load 2 points, 9 comments
“How doable? CS 240 CS 241 CS 251 AMATH 250 STAT 231 ECON 371 It would be my first time doing 6 courses.”
u/JJJustinWang: “I did CS 240, CS 241, CS348, MATH 235, STAT231, SPCOM 225 during my 2B term. It was pretty intensive. I imagine your workload will be similar to mine.”
CS348 /CS349 Workload 4 points, 4 comments
Check it elsewhere for Fall 2026
- Undergraduate Calendar, 2026–27The official entry
- Requirements for Fall 2026Waterloo’s requisite checker
- Schedule of Classes, Fall 2026Instructors, rooms, live seats
- Quest Class SearchWhere you enrol
- Course outlinesSyllabi from past terms (UW login)
- UW FlowStudent ratings and reviews
- WClassesPast sections back to 2004, and who taught them