Database Design Project
Database Design Project
Part I:
Conceptual/Logical Database Design
You must choose some facet of real life that you feel needs to be modeled by a database. Then,
you mustdesign a relational database schema that adequately represents this information, and
demonstrate its efficacy by providing a set of useful queries that your database can support. In the
process, you must usestandard relational modeling tools and techniques we examined in class. In
concrete terms, this part of theproject consists of the following steps:
(1) Begin by choosing an application, e.g. the database for a local volleyball league or the
database for a Society of Roasted-Shrimp Fans. It must be non-trivial, but not huge. As a general
guideline, you should probably have about seven to ten entity sets and similar number of
relationship sets.
(2) Formulate in English at least 10 realistic queries you believe would be useful to somebody
using thedatabase. The queries must be realistic and you should have more than few complex
queries. Note, thequeries that the database system must be able to answer ultimately determine
what information needs to be maintained in the database. For example, you need not include the
information about best friends of students if no user of your database will be asking for that. On
the other hand, some additionalinformation, not reflected in your 10 queries, may be included in
the database if you feel that somebody may be interested in it.
(3) Specify the assumptions about the database in English (informally). Here you talk about
attributes, keys, the nature of relationships between entities, etc. Do not discuss something that is
obvious (e.g., that a student can take several courses). In addition, don't make too many simplifying
assumptions.
(4) Give an ER diagram, which will reflect your choice of the entity sets, their relevant attributes,
and the relationships among them. Again, make your relationships realistic and meaningful.
Part II:
You should hand in the full, legible report (hopefully typeset) with a cover page that gives your
name, the title of the project, and its brief description. The final report should include sufficient
detail to describe all steps of your design:
(7) Give at least two reasonable, but unanswerable queries, and explain why the database cannot
support them.
(8) In conclusion, describe what you have learned from the project, and include your observations
about the power of relational systems and languages.
Part III:
Implementation
Your task now is to implement your database using Oracle or MySQL.
(2) Insert 10 to 15 records into each table and print the contents of each (using SELECT * ).