System description
You are required to design and implement a small database application to manage any data you are
interested in. Some examples are listed below for your reference:
1, if you have a collection of CDs, you can manage the data of albums, musicians, songs,
companies etc.
2, if you are interested in NBA/NFL games, you can manage the data of players, teams,
coaches, matches etc.
3, you can also manage your favorite movies by storing and manipulating the data of movies,
actors/actresses, directors etc.
Design and Implementation
Perform the conceptual database design using Entity-Relationship model. You must submit the
Entity-Relationship diagram of your database. In the E-R diagram,
1, there must be at least 4 entities;
2, there must be at least 2 one-to-many/one-to-one relationships;
3, there must be at least 1 many-to-many relationship.
Convert your E-R diagram to logical database model. You are to design the table structure, including
all needed attributes for each table. You must submit the relational database schema, which consists
of the description of all tables, constraints in your database. For each table, please specify the
primary key and foreign keys.
Implement your design using any DBMS. You are required to create all the tables and develop
queries in the target DBMS. You must generate and load appropriate, consistent data into your
database. Two options are listed below,
1, MySQL: for this option, you must submit the DDL statements you used to create the
tables, to define the constraints, and the SQL statements for all the queries;
2, Microsoft Office Access: for this option, you must submit the screen snapshots of design
views of all tables and queries. For each query, the equivalent SQL statement must be
provided as well. You must also include the database relationships diagram, which shows all
relationships between tables.
For other DBMSs, the requirements are similar to option#1. The bottom line is that you have to
submit materials to show how you created the tables and queries.
Queries
You must design and develop at least 6 queries in your database application, among them,
1, at least 2 queries are multi-table queries;
2, at least 2 queries use SQL aggregate functions;
3, at least 1 query uses subquery;
4, NULL search condition should be used at least once;
5, GROUP BY and HAVING clause should be used as least once.
Project Report
In your report:
1, you must describe your database application;
2, you must submit the conceptual and logical design of your database as specified in section
Design and Implementation, which include the E-R diagram and relational database schema
of your database. For each table:
a, describe all the attributes (including attribute names, data types etc.);
b, specify the primary keys and foreign keys (if exist);
c, discuss which Normal Form it is in;
d, provide the SQL DDL statement you used to create the table, or the screen
snapshots if your used GUI;
e, print out all the records in the table.
3, for each query:
a, describe the query;
b, provide the SQL statement for it, or if you used GUI, provide the screen snapshots
and the equivalent SQL statement;
c, print out the results returned by the query.
If you choose to use Microsoft Office Access, please submit the database file (.mdb or .accdb) along
with your report.