database design

Anonymous
timer Asked: Mar 2nd, 2016

Question description

Scenario:

You are the database designer and developer for a donut shop that wants to create a smartphone application where customers can order donuts. First, you will design a normalized entity-relationship (E-R) logical database model to store data related to the customer, donuts, and donut order. Next, you will create three tables with primary and foreign keys that are derived from your E-R model. Once the tables have been built, then you will create views and indexes to protect and fine-tune query performance. You will populate each of the tables with sample data. Finally, you will create both a simple “select-from-where” (sfw) query and a complex join query to produce meaningful reports on individual donut orders and summaries to determine which donuts sell the best.

Requirements:

A.    Construct a normalized model to represent the donut shop smartphone application database that supports the scenario above by doing the following:

1.    Using the unnormalized order form (“Sales Order Form” attached below) for the donut ordering database as a reference, produce the final logical schema for this database by doing the following:

Note: You can design the tables using any method of your choice (e.g., using a drawing tool using tables).

a.    Design a table that is in 1st normal form and fulfills the following requirements: 

•   The table should have a primary key that uniquely identifies the records.

•   The values in each of the columns should be atomic. 

•   There should be no repeating groups. 

i.   Write a one paragraph explanation of how you designed the table.

b.    Design at least two tables that are in 2nd normal form and fulfill the following requirements: 

•   The tables should meet all of the requirements for the 1st normal form. 

•   Redundant data appearing in multiple rows should be eliminated with the creation of the new tables.

•   Each of the tables should be related using foreign keys.

i.   Write a one paragraph explanation of how you designed the table

c.    Design at least three normalized tables that are in 3rd normal form and fulfill the following requirements:

•   The tables should meet all of the requirements for the 1st and 2nd normal forms.

•   Fields that do not depend on the primary key or any other field should be eliminated.

•   There should be at least three resulting tables, one for customer information, one for donut information, and one for order information.

i.   Write a one paragraph explanation of how you designed the table

B.    Using the tables you designed in 3rd normal form from part A1c, create an entity-relationship (E-R) diagram that fulfills the following requirements:

Note: You can use any drawing tool of your choice to create the diagram.

•   Entities should be drawn that represent each of the tables from the 3rd normalized form.

•   All appropriate fields (i.e., attributes) should be entered into each of the entities.

•   Primary keys (PK) and foreign keys (FK) should be appropriately designated.

•   Data types for each attribute (Numeric, Fixed, Char, Varchar, or Timestamp) should be appropriately designated.

•   Relationships drawn between the entities should be labeled with a relationship name.

1.    Provide a written explanation for the following:

a.    Explain why you selected the entities represented in your diagram.

b.    Explain how you determined the relationships between these entities.

c.    Explain what the cardinality is for each of the relationships.

C.    Develop the SQL code for each of the tables you designed in part A and refined in part B by doing the following:

1.    Provide the SQL code you wrote for each table. 

Note: Make sure all of the primary and foreign keys and data types are assigned to each of the fields in the create table SQL code.

a.    Demonstrate that you have used SQL Fiddle to test your code from part C1 by providing a screenshot of your results.

D.    Using the table that contains the customer information fields, develop SQL code to create a View that shows all of the customer information with the First Name and Last Name concatenated (CONCAT()) to show full name as one field by doing the following:

1.    Provide the SQL code you wrote to create the View for the customer information.

Using the table that contains the donut information fields, develop SQL code to create an Index for the donut name field by doing the following:

1.    Provide the SQL code you wrote to create the Index for the donut information.

F.    Using all of the tables you developed in part C, develop SQL code to populate each of the tables by doing the following:

1.    Provide the SQL code that inserts data into all of the tables.

Note: Make sure that data is inserted first into the table(s) with primary keys before inserting data into the other tables.

Using the tables you populated in part F, develop SQL code to display the values in a requested   table or tables by doing the following:

1.    Provide the SQL code for the simple (sfw) queries to display all of the data in each of the tables you have created and populated. 

a.    Demonstrate that you have used SQL Fiddle to test your code from part G1 by providing a screenshot of your results.


Tutor Answer

(Top Tutor) Studypool Tutor
School: Cornell University
Studypool has helped 1,244,100 students
flag Report DMCA
Similar Questions
Hot Questions
Related Tags

Brown University





1271 Tutors

California Institute of Technology




2131 Tutors

Carnegie Mellon University




982 Tutors

Columbia University





1256 Tutors

Dartmouth University





2113 Tutors

Emory University





2279 Tutors

Harvard University





599 Tutors

Massachusetts Institute of Technology



2319 Tutors

New York University





1645 Tutors

Notre Dam University





1911 Tutors

Oklahoma University





2122 Tutors

Pennsylvania State University





932 Tutors

Princeton University





1211 Tutors

Stanford University





983 Tutors

University of California





1282 Tutors

Oxford University





123 Tutors

Yale University





2325 Tutors