IST210 Project #2: Due Nov. 15 , 9:45am
Prof. Dongwon Lee, Penn State University
- Fix up all errors that were pointed out in proj #1 - revise your
ER design, associated assumptions, and queries (ignore all indexes).
- You are free to drop some queries out and add new queries into
the 10 query list if you think you have better ones.
that if any parts
from proj #1 still contain errors because you fail to fix them up, you
will lose points again. If you do not understand my comments, talk to
me. I will help you.
2. ER to Relational Model
- Show relational schema that are to be generated from your ER
design. In particular, for each table, you need to determine:
- Attribute name, data type, length, and nullable or not
- Determine a Primary Key (PK) -- note that primary key attribute
can't be null
- Pay extra attention to those "Relationship" -- depending on
whether they are unary/binary/ternary or cardinality/modality, the
resultant table schema may vary.
- Optimize your
relational schema by removing some unnecessary
merging multiples into one. If you have no such case, say so.
- Specify every Foreign Key (FK) and Referential integrity
(ie, delete-cascade, delete-restrict, or delete-null policy).
- For each table, populate 3-4 tuples.
Since you may need to modify your schema later, do not waste your
effort on populating a lot of tuples -- just 3-4 tuples per table is
enough for now. In proj #3, you need to populate more number of tuples
- For "TWO"
tables, show the screen-shots of contents of table so that we can check
the data population has succeeded or not.
- (Bonus 10 points) Look at Chapter 9 (SQL) ahead and implement "THREE"
queries from your 10
query list. 3 queries must be types of select,
project, and join (see explaination in Page
100-106 of Chapter 5). Run them in Query Analyzer and show the SQL
query as well as results as screen-shot. For instance, if you have a
table Foo, a query "SELECT * FROM Foo" is a type of select query, and a
query "SELECT attr1, attr2 FROM Foo" is a type of project query. NOTE that you
need to implement THREE of your suggested queries from the 10 query
- Your report should consist of
- Cover page: List (1) project title,
(2) section number, (3) project team name (i.e., A-I), and (4) member
- Part 1: FIXED highlevel description
- Part 2: FIXED E/R diagram
- Part 3: FIXED assumptions that you
- Part 4: FIXED 10 queries
5: FIXED 5 Indexes
- Part 6: Relational schema of all
tables -- for each table, mention attribute name and type, then primary
and foreign keys. Also, mention what referential integrity policy is
used on what pair of attributes (delete-cascade or delete-restrict). If
you optimized any tables, describe about those, and show the resultant
- Part 7: Screen-shots of TWO selected
tables showing their contents (do not show contents of all of your
tables -- it's too much for me to check)
- Part 8 (Bonus): Screen-shots of
selested SQL queries and their results in Query Analyzer.
- Part 9: Short description of WHO did
WHAT role in your team (all members must participate in the project)
- Drop to ANGEL:
- Like proj #1, the leader of each team drops the copy at ANGEL,
and the rest of members drops a "blank" one at ANGEL
- This time, I'd like to also get a hard-copy
bring one hard-copy to class.
Last modified: Mon Oct 18 00:31:32 EDT 2006