Our business scenario is UBER
Deliverables: 1) Project Report in pdf format, name as Web address for .php files should be added to report. Website should be active until last day of final week.
Objective: In this DB project you need to demonstrate your database design and SQL skills through a selected business scenario.
Description
In this project you need to create your imaginary scenario for a given database problems below. A project is around a business scenario (UBER), like the mini cases developed in the class, Company ER and database.
You plan business scenario roughly first. Then, you may need to refine it. For instance, if ER design invalidates database design rules (1NF, 2NF, and 3NF) you need to fix these problems accordingly.
Project Details
Below, you will find the steps you should follow in DB design and SQL statements.
DB Design
Step 1) Create an imaginary business around your business theme. Your business theme will be given later. Your scenario should satisfy following conditions:
a. Include at least one one-to-one binary relationships.
b. Include at least one one-to-many binary relationships.
c. Include at least one many-to-many binary relationships.
d. Include at least one intersection data (on many-to-many relationships).
e. Include at least one one-to-one unary relationships.
Note-1: You can create more relationships if required.
2) Explain the story behind the scenario, and all your assumptions, which are required to support relationships given above.
3) Show entities and their attributes. Each entity should have at least three attributes.
4) Show ER diagram with correct notation (cardinality/modality). You can use any drawing software, MS Visio, www.lucidchart.com, www.draw.io , etc. In those online tool you can use "Entity Diagram" section. Make sure that you ER diagram fits one pages and seems tidy and compact.
5) Show your referential integrity rules for your scenario. (FK->PK)
6) Convert the ER diagram to tables. Show your tables with primary keys.
7) Discuss database normalization rules on your tables. Do not explain what the rules are. Instead validate if each of tables satisfies 1NF, 2NF, and 3NF. If not, normalize your tables.
SQL
In this part you need to demonstrate SQL operation on your project portal (phpMyAdmin). Add related SQL statement and output as screenshot into your project file.
8) List each of table, such as STUDENT(CWID (PK), Name, LastName, Major (FK) ). No screenshot required, SQL statements only.
9) Give data insertion SQL statements involving at least three tables. (SQL only)
10) Give data deletion SQL statements involving at least three tables. (SQL only)
11) Give data update SQL statements involving at least three tables. (SQL only)
12) Give two SELECT statements with WHERE statement. Also show it online, a link for .php file required. Show screenshot of .php file.
13) Give two SELECT statements with GROUP BY statement. Show the resulting table (screenshot).
14) Give a SELECT statements with HAVING statement. Show the resulting table (screenshot).
15) Using two related table (meaning logically connected with primary-key and foreign-key pairs), run a join statement to show matching rows. For instance, assume that Table A and Table B has 4 and 5 attributes respectively. Also, assume that Table A’s primary key is seen as foreign key in Table B. Use join operations to show matching rows whose primary key and foreign key is same. Give SQL statement and show the resulting table (screenshot).
16) Give a Left Join statements. Also show it online, a link for .php file required. Show screenshot of .php file.
17) Give a ORDER BY statement with join statement on a foreign key. Also show it online, a link for .php file required. (Either ascending or descending order is acceptable). Give SQL Statement. Show screenshot of .php file.
18) Give a SQL statement in which a DATE data type is subject of where statement (such as, select ... from ... where birthday > DATE). Also show it online, a link for .php file required. Show screenshot of .php file.
19) Give a CREATE VIEW statement. Show the resulting table (screenshot).