Databases: final assessment

This covers the whole course. Take it after the last module.

Final quiz

1. What is a DBMS?
2. Which statement reads data without changing it?
3. Which clause removes repeated rows from a result?
4. What does DROP TABLE do?
5. Which join keeps only the pairs that match?
6. What is the difference between WHERE and HAVING?
7. A CHECK (age >= 18) column gets a NULL age. What happens?
8. What does COALESCE(phone, email, 'none') return?
9. Which query finds the second-highest different salary?
10. A view's base table gets a new row. When does the view show it?
11. Which normal form forbids a non-key column depending on another non-key column?
12. Why are B+ tree indexes so fast?
13. A EXCEPT B UNION B EXCEPT A is written with no brackets. How is it worked out?
14. How do you find the students who took every course in Required?
15. Which isolation level prevents dirty reads, non-repeatable reads and phantoms?
16. Why does INSERT OR IGNORE help when loading rows into a table with constraints?
17. A schedule's precedence graph has a cycle. What does that tell you?

Practical assessment: Design a clinic appointment database

Without using hints, design and build a database for a clinic's doctors, patients and appointments, and write the queries the reception desk needs.

Final project

A library database: Design and build the database for a small library: members, books, copies, loans and fines, with the queries the librarians need every day.

How it is evaluated

To complete this course