|CPSC 343||Database Theory and Practice||Fall 2017|
Midterm #2 will be an open book take-home exam. This means that you can use the textbook on reserve in the library (Elmasri and Navathe), your own notes made prior to the exam being handed out, and the materials posted directly on the course website. Other books, other people's notes, and other websites (even external websites linked to the course pages) are not allowed, nor is communicating with anyone else about the exam (other than asking me clarification questions).
The exam will cover material since the first exam and going through 10/25. This is SQL: data definition, queries (simple queries, products and joins, set operations, subqueries, grouping, aggregation), data modification (INSERT, LOAD DATA INFILE, DELETE, UPDATE), views, stored routines, triggers, transactions, and related concepts (e.g. three-valued logic, the handling of NULL values, and the handling of duplicates).
Expect questions similar to the homework assignments and practice problems: writing queries (SELECT, INSERT, DELETE, UPDATE); defining tables (including specifying data types, primary keys, and foreign keys), views, stored routines, and triggers; and loading data with LOAD DATA INFILE. You may be asked to do these things using MySQL Workbench or to give the SQL statement(s) for accomplishing the task. (For the latter, you may use Workbench to define the object and then copy the SQL statement that it will send to accomplish the task.)
There may also be short answer questions about concepts (including grants and transactions) or which ask you to describe what a query does or explain whether or not the query accomplishes a specific task.