University of Sydney · S2 2026 · FACULTY OF COMPUTER SCIENCE

COMP9120 · Database Management Systems

- one subject, every graph, every model, every mark
50% final exam · hurdle12 Chapters110-page Bible
Our own words - no uploaded lecturer files
Built to mirror S2 2026 · updated this semester
The Complete Exam Bible · S2 2026

Database Management Systems

— From ER diagram to SQL to the exam — every model, query and normalisation step USyd examines, worked end to end.

COMP9120 Database Management Systems is a postgraduate core unit at the University of Sydney that runs the full database pipeline: conceptual ER design, the relational model and mapping, relational algebra and SQL, integrity and application development, then normalisation, transactions, storage and query processing. This free exam bible reworks every examinable skill in University of Sydney COMP9120 Database Management Systems - ER-to-relational mapping, nested and aggregate SQL, BCNF decomposition, conflict-serializability and page-I/O costing - into worked, step-by-step problems. It is a study aid, not a substitute for Canvas: confirm all weights, dates and rules on your COMP9120 unit page.

COMP9120 · University of Sydney
Assessment

How COMP9120 is assessed

ComponentWeightFormat
Assignment 1 — Conceptual design & schema (group)13%Build an ER model from a brief, derive a SQL schema, implement in PostgreSQL; released Week 4, due Week 7
Quiz24%In-class secure test, closed book, 90 minutes, covers Weeks 1-9, ~Week 10
Assignment 2 — Database application development (group)13%Client interface over the DB + back-end stored procedures/indexes (Java or Python); released Week 8, due Week 11
Final Exam50%Paper-based, 2 hours, closed book, formal exam period
Worked example · free

Block nested-loop join cost

Q [4 marks]. Join relation R (b_R = 60 pages) with relation S (b_S = 500 pages) on an equi-key, with R as the outer relation. Compute the block nested-loop join cost in page I/Os using this unit's formula.
  • +1Write this unit's formula: block nested-loop join cost = b_R + b_R * b_S. The inner relation S is scanned once per outer PAGE of R (not once per outer row, and not the M-2 block variant).
  • +1Read the outer relation R once: b_R = 60 page reads.
  • +1Each of R's 60 pages drives one full scan of S: inner reads = b_R * b_S = 60 * 500 = 30,000 page reads.
  • +1Total = b_R + b_R * b_S = 60 + 30,000 = 30,060 I/Os.
30,060 page I/Os, with R (the smaller relation) kept as the outer.
Sia tip — Use this unit's convention block NLJ = b_R + b_R * b_S (inner scanned once per outer page), and keep the smaller relation outer - it lowers b_R and so the cost.
Glossary

Key terms

DBMS
Software that manages large, persistent, shared collections of data, providing data independence, integrity, concurrency control, recovery and a query language.
ER model
A conceptual design notation of entities, attributes and relationships (with cardinality and participation) used to model a domain before it becomes a relational schema.
Weak entity
An entity with no key of its own; identified by an owner via an identifying relationship, so its primary key is the owner's key plus a discriminator.
Primary key
The chosen candidate key of a relation; it is unique and NOT NULL, and there is exactly one per table.
Foreign key
An attribute (or set) whose values must match a candidate-key value in a referenced relation, enforcing referential integrity.
Relational algebra
A procedural query language over relations with six basic operators (selection, projection, cross-product, union, set difference, rename); join and intersection are derived.
Functional dependency
A constraint X -> Y meaning each value of X determines at most one value of Y; the basis of normalisation, judged by semantics not by a single instance.
Attribute closure (X+)
The set of all attributes determined by X under a set of FDs; X is a superkey exactly when X+ is all attributes.
Candidate key
A minimal superkey: it determines every attribute, and no proper subset of it does.
BCNF
Boyce-Codd Normal Form: for every non-trivial FD X -> Y, X is a superkey; it removes redundancy by requiring every determinant to be a key.
Lossless-join decomposition
A split of R into pieces that rejoin to exactly R (no spurious tuples); guaranteed when the common attributes form a key of at least one piece.
Conflict-serializability
A schedule is conflict-serializable when its precedence graph is acyclic, meaning it is conflict-equivalent to some serial order of the transactions.
Two-phase locking (2PL)
A protocol with a growing phase (acquire locks only) then a shrinking phase (release only); it guarantees conflict-serializability. Strict 2PL holds all locks until commit.
Clustered index
An index whose data records are stored in search-key order, so range matches sit on consecutive pages; an unclustered index scatters matches, costing up to one I/O per matching record.
FAQ

COMP9120 FAQ

Can AI help me study COMP9120?

Yes, as a study aid. Sia works through COMP9120 problems step by step - it will map an ER diagram to relations, walk a BCNF decomposition, or explain why a schedule is or is not conflict-serializable, and then check your own working. It explains the method so you can reproduce it under closed-book exam conditions; it will not sit your quiz, exam or assignments for you.

Where can I find past exam papers / practice for COMP9120?

Official past papers and practice questions are released through your University of Sydney COMP9120 Canvas site and the library's exam-paper collection - always start there. This free bible adds an eleven-question practice bank with fully worked solutions across the whole unit, written in the exam style with fresh scenarios, and you can ask Sia to explain any step you get stuck on.

What can Sia do that a textbook can't?

A textbook explains a topic once, for everyone; Sia is interactive. It adapts to your exact question - your ER diagram, your FD set, your join numbers - shows each step, and answers 'why' when you are stuck. It is a tutor that explains, not an answer key: it guides you to the method rather than completing your assessment.

Is COMP9120 hard?

It is a broad core unit that combines design (ER, relational, normalisation), query languages (relational algebra and SQL) and systems reasoning (transactions, storage, query cost). Most students find it manageable by practising the recurring tasks until the method is automatic, because the exam rewards shown working. The load is real but the topics are well defined.

Is the COMP9120 final open or closed book?

The final is closed book: a paper-based, 2-hour written exam with no notes or textbook, held in the end-of-semester formal exam period (University of Sydney Semester 2, around November 2026). That is why the rule and formula belts need to be memorised - confirm the exact date, time and venue on your COMP9120 Canvas site and the University of Sydney exam timetable.

What is the COMP9120 hurdle requirement?

To pass you must score at least 40% in the final exam and at least 50% overall; if you miss either, the final mark can be capped at no more than 45 regardless of your average. The final exam is a hurdle task, so clearing 40% on it comes before chasing a grade.

How is COMP9120 assessed?

Four components sum to 100%: Assignment 1 (conceptual design and schema, 13%), an in-class closed-book Quiz (24%), Assignment 2 (database application development, 13%), and the Final Exam (50%). The two assignments are group work; the exam and quiz are individual. Confirm the current split on Canvas.

Study strategy

How to study for the exam

Treat COMP9120 Database Management Systems at the University of Sydney as a set of repeatable procedures rather than facts to memorise: for each topic - ER-to-relational mapping, relational algebra, SQL, functional dependencies and BCNF, conflict-serializability, and storage and join cost - drill the method until you can reproduce it from a blank page, since the closed-book final rewards shown working. Work the practice bank by covering each solution first, then compare line by line, and rebuild the rule and formula belts from memory each week so they are automatic on the day. When a step will not click, ask Sia to explain that exact step, then redo the whole problem yourself.

Study COMP9120 with AI

Your AI Computer Science tutor for COMP9120

Stuck on a hard COMP9120 question? Sia is AskSia’s AI Computer Science tutor — ask any COMP9120 Database Management Systems question and get a clear, step-by-step explanation grounded in how the course is actually taught and assessed. Read this whole study guide free, then take your hardest questions to Sia.

A+Everything unlocked
Unlocks this Bible + all 25 of your University of Sydney subjects - and 1,000+ Bibles across every Australian university.
Sia - your COMP9120 tutor, unlimited, worked the way the exam marks it
The full 110-page Bible + practice bank with worked solutions
Chrome extension - sync your LMS so Sia knows your deadlines
Bilingual EN / Chinese on every Bible and every Sia answer
$25/ month
30-day money-back · cancel in one tap · how it works
Unlock the full COMP9120 Bible + 25 University of Sydney subjects解锁完整 COMP9120 Bible + University of Sydney 25 门科目
$25/mo