Mid Term Exam
Tuesday, October 22nd, 10:00-11:30, SB104
The exam will be 90 minutes long. It is closed book and closed notes. Questions will be both multiple-choice and full text questions. Most of the topics have been covered in homework assignments 1 and 2.
- The relational model
- Schemata and Instances
- Integrity Constraints
- Relational algebra:
- Write relational algebra expressions
- Translate SQL into relational algebra
- SQL: Write SQL statements and evaluate them
- Write DDL commands to create new tables
- Write SQL queries or evaluate them
- Write SQL inserts, updates, and delete
- Write triggers
Relational domain and tuple calculus will not be part of the exam. Also accessing a database from a programming language will not be covered.
Solutions: Here are the solutions for the midterm. Grades will be made available through blackboard in the next few days.
Final Exam
Wednesday, December 4th, 8:00-10:00, SB104
The exam will be 120 minutes long. It is closed book and closed notes. Questions will be both multiple-choice and full text questions. Topics covered will be:
- The relational model
- Schemata and Instances
- Integrity Constraints
- Relational algebra:
- Write relational algebra expressions.
- Translate SQL into relational algebra.
- SQL: Write SQL queries and evaluate them.
- Relational Database Design and the Entity-Relationship model
- Normal Forms
- Design an ER model for a given application domain
- Translate an ER model into a relational schema
- Transactions and Concurrency
- Types of schedules
- Serial
- Conflict-serializable, view-serializable
- Recoverable, strict (cascadeless)
- Locking protocols
- 2PL, S2PL, SS2PL
- Deadlocks
- Deadlock prevention
- Deadlock detection
The core part of the exam will be similar in nature to the homework assignments. For the parts not covered by the homework assignments you can expect questions like this:
- Functional dependencies
- Be able to explain what closures, attribute closures, and canonical covers are
- Be able to state Armstrong's axioms
- Normalization
- Given a relation R, figure out whether it is in a certain normal form
- Given a relation R, decompose it into a certain normal form
- Be able to state the requirements for a certain normal form (e.g., a relation is in third normal form if ...)
- Schedules
- Given a schedule S for a set of transactions, determine to which class of schedules S belongs too (e.g., conflict-serializable, view-serializable, recoverable, cascadeless)
- Be able to explain the definitions for conflict-serializable, view-serializable, recoverable, cascadeless
- Locking protocols
- Explain the differences between 2PL, S2PL, and SS2PL
- Be able to determine whether a certain schedule can occur under one of these protocols
- Explain lock compatibility and the two phases in 2PL
Solutions: Here are the solutions for the final.
Practise Questions