
Concept explainers
a.
Normalization:
The process used to minimize data redundancy and dependency in a relational
Second normal form (2NF):
- The value of all non-primary key attributes should be dependent on the primary key attribute.
- If any attribute is depending on the partial primary key then it should determine the other attributes for an instance of the entity.
- The partial dependencies should be removed from the data model.
Third normal form (3NF):
- The value of any non-primary key attributes will not depend on any other non-primary key attributes.
- If any non-primary key attributes depend on any other non-primary key attribute then it should be moved or deleted.
- It is termed as transitive dependency.
Partial dependency:
A partial dependency exists at that time of an attributes depends only a part of primary key. This dependency is related with 1st normal form.
Transitive dependency:
A transitive dependency exists at that time of an attributes depends on another attribute which is not part of primary key.
Functional dependency:
An association between two attributes or two set of attributes in a same relational database table, which is having some constraints is known as functional dependency.
- In a table one attribute is functionally dependent on another attribute to take one value.
a.

Explanation of Solution
Construct the dependency diagram with all partial and transitive dependencies:
The relational schema for given STUDENT table is given below:
STUDENT(STU_NUM, STU_LNAME, STU_MAJOR, DEPT_CODE, DEPT_NAME,
DEPT_PHONE, ADVISOR_LNAME, ADVISOR_OFFICE, ADVISOR_BLDG, ADVISOR_PHONE, STU_GPA, STU_HOURS, STU_CLASS)
- Here, “STU_NUM” indicates the primary key.
The representation of dependency diagram with all transitive dependencies is shown below:
Explanation:
In the above dependency diagram,
- The transitive dependency is,
DEPT_CODE -> (DEPT_NAME, DEPT_PHONE, COLLEGE_NAME)
ADV_OFFICE -> (ADV_BUILDINGS)
STU_HOURS -> (STU_CLASS)
b.
Normalization:
The process used to minimize data redundancy and dependency in a relational database is known as normalization. The database table is divided into two or more tables and defines the relationship between those tables.
Second normal form (2NF):
- The value of all non-primary key attributes should be dependent on the primary key attribute.
- If any attribute is depending on the partial primary key then it should determine the other attributes for an instance of the entity.
- The partial dependencies should be removed from the data model.
Third normal form (3NF):
- The value of any non-primary key attributes will not depend on any other non-primary key attributes.
- If any non-primary key attributes depend on any other non-primary key attribute then it should be moved or deleted.
- It is termed as transitive dependency.
Partial dependency:
A partial dependency exists at that time of an attributes depends only a part of primary key. This dependency is related with 1st normal form.
Transitive dependency:
A transitive dependency exists at that time of an attributes depends on another attribute which is not part of primary key.
Functional dependency:
An association between two attributes or two set of attributes in a same relational database table, which is having some constraints is known as functional dependency.
- In a table one attribute is functionally dependent on another attribute to take one value.
b.

Explanation of Solution
Construct the dependency diagram:
The new dependency diagram is represented by removing all transitive dependencies in STUDENT table.
First table:
The relational schema for first table is given below:
STUDENT(STU_NUM, STU_LNAME, STU_MAJOR, DEPT_CODE, ADVISOR_NUM STU_GPA, STU_HOURS, STU_CLASS)
- Here, “STU_NUM” indicates the primary keys and “ADVISOR_NUM” indicates the foreign key.
- The relation is in third normal form (2NF), since there is transitive dependency in this table.
The representation of dependency diagram in first table is shown below:
Second table:
The relational schema for second table is given below:
MAJOR(MAJOR_CODE, DEPT_CODE, MAJOR_DESCRIPTION)
- Here, “MAJOR_CODE” indicates the primary key.
- The relation is in third normal form (3NF), since there is no transitive dependency and no repeated attributes.
The representation of dependency diagram in second table is shown below:
Third table:
The relational schema for third table is given below:
BUILDING(BLDG_CODE, BLDG_NAME, BLDG_MANAGER)
- Here, “BLDG_CODE” indicates the primary key.
- The relation is in third normal form (3NF), since there is no transitive dependency and no repeated attributes.
The representation of dependency diagram in third table is shown below:
Fourth table:
The relational schema for fourth table is given below:
DEPARTMENT(DEPT_NAME, DEPT_PHONE, COLL_CODE)
- Here, “DEPT_NAME” indicates the primary key.
- The relation is in third normal form (3NF) but it does not meet the BCNF, since there is no transitive dependency and no repeated attributes.
The representation of dependency diagram in fourth table is shown below:
Fifth table:
The relational schema for fifth table is given below:
COLLEGE(COLL_CODE, COLL_NAME)
- Here, “COLL_CODE” indicates the primary key.
- The relation is in third normal form (3NF), since there is no transitive dependency and no repeated attributes.
The representation of dependency diagram in fifth table is shown below:
Sixth table:
The relational schema for sixth table is given below:
ADVISOR(ADV_NUM, ADV_LASTNAME, ADV_OFFICE, ADV_BUILDING, ADV_PHONE)
- Here, “ADV_NUM” indicates the primary key.
- The dotted transitive dependency line specifies that dependency is interpretation.
- The relation is in third normal form (2NF), since there is transitive dependency in this table.
The representation of dependency diagram in sixth table is shown below:
c.
Explanation of Solution
The representation of Crow’s Foot Entity Relational Diagram (ERD) is shown below:
The following data model shows the solution for the given question.
Explanation:
- In the above data model, the college owns more than one department.
- The “COLLEGE” entity contains the “COLL_CODE” and “COLL_NAME” attributes.
- The primary key of “COLL_CODE” entity is “INV_NUM”.
- The “DEPARTMENT” entity contains the “DEPT_CODE”, “DEPT_NAME”, “DEPT_PHONE” and “COLL_CODE” attributes.
- The primary of this entity is “DEPT_CODE”.
- The foreign key of this entity is “COLL_CODE”.
- The “COLLEGE” entity contains the “COLL_CODE” and “COLL_NAME” attributes.
- The department offers more than one major.
- The “MAJOR” entity contains the “MAJOR_CODE”, “MAJOR_NAME”, and “DEPT_CODE” attributes.
- The primary key of “MAJOR_CODE” for this entity.
- The foreign key of this entity is “VEND_CODE”.
- The “MAJOR” entity contains the “MAJOR_CODE”, “MAJOR_NAME”, and “DEPT_CODE” attributes.
- The major attracts more than one student.
- The “STUDENT” entity contains the “STU_NUM”, “STU_LNAME”, “STU_CLASS”, “STU_HOURS”, “STU_GPA”, “MAJOR_CODE”, and “ADV_NUM” attributes.
- The primary key of “STU_NUM” entity.
- The foreign key of this entity is “MAJOR_CODE” and “ADV_NUM”.
- The “STUDENT” entity contains the “STU_NUM”, “STU_LNAME”, “STU_CLASS”, “STU_HOURS”, “STU_GPA”, “MAJOR_CODE”, and “ADV_NUM” attributes.
- The building houses more than one advisor.
- The “ADVISOR” entity contains the “ADV_NUM”, “DEPT_CODE”, “BLDG_CODE”, “ADV_LNAME”, “ADV_OFFICE”, and “ADV_PHONE” attributes.
- The primary key of “ADV_NUM” entity.
- The foreign key of this entity is “DEPT_CODE” and “BLDG_CODE”.
- The “BUILDING” entity contains the “BLDG_CODE”, “BLDG_NAME” and “BLDG_MANAGER” attributes.
- The primary key of “BLDG_CODE” entity.
- The “ADVISOR” entity contains the “ADV_NUM”, “DEPT_CODE”, “BLDG_CODE”, “ADV_LNAME”, “ADV_OFFICE”, and “ADV_PHONE” attributes.
- The advisor advises more than one student.
Want to see more full solutions like this?
Chapter 6 Solutions
EBK DATABASE SYSTEMS: DESIGN, IMPLEMENT
- Exercise 1 Function and Structure [30 pts] Please debug the following program and answer the following questions. There is a cycle in a linked list if some node in the list can be reached again by continuously following the next pointer. #include typedef struct node { int value; struct node *next; } node; int 11_has_cycle (node *first) if (first == node *head { NULL) return 0;B = first; while (head->next != NULL) { if (head == first) { return 1; } head head->next; } return 0; void test_11_has_cycle() { int i; node nodes [6]; for (i = 0; i < 6; i++) nodes [i] .next = NULL; nodes [i].value i; } nodes [0] .next = &nodes [1]; nodes [1] .next = &nodes [2]; nodes [2] .next = &nodes [3]; nodes [3] .next = & nodes [4]; nodes [4] .next = NULL; nodes [5] .next = &nodes [0]; printf("1. Checking first list for cycles. \n Function 11_has_cycle says it hass cycle\n\n", 11_has_cycle (&nodes [0]) ?"a":"no"); printf("2. Checking length-zero list for cycles. \n Function 11_has_cycle says it has %s…arrow_forwardcheckpoint exercice for my students for Amortized Analysisarrow_forwardusing r languagearrow_forward
- using r languagearrow_forwardusing r languagearrow_forwardCompute a Monte Carlo estimate o of 0.5 0 = L ē -xdx 0 by sampling from Uniform(0, 0.5). Find another Monte Carlo estimator 0* by sampling from the exponential distribution. Use simulations to estimate the variance of Ô and ⑦*, which estimator has smaller variance?arrow_forward
- import tkint class ShowInfoGUI:def __init__(self):# Create the main windowself.main_window = tkinter.Tk() # Create two framesself.top_frame = tkinter.Frame(self.main_window)self.bottom_frame = tkinter.Frame(self.main_window)arrow_forwardJOB UPDATE Apply on- COMPANY VinkJobs.com @ OR Search "Vinkjobs.com" on Google JOB PROFILE JOB LOCATION INTELLIFLO APPLICATION DEVELOPER MULTIPLE CITIES GLOBAL LOGIC SOFTWARE ENGINEER/SDET DELHI NCR SWIGGY SOFTWARE DEVELOPMENT BENGALURU AVALARA SOFTWARE ENGINEER (WFH) MULTIPLE CITIES LENSKART FULL STACK DEVELOPER MULTIPLE CITIES ACCENTURE MEDPACE IT CUST SERVICE SOFTWARE ENGINEER MUMBAI MUMBAI GENPACT BUSINESS ANALYST DELHI NCR WELOCALIZE WORK FROM HOME MULTIPLE CITIES NTT DATA BPO ASSOCIATE DELHI NCRarrow_forwardHow can predictive and prescriptive modeling be used to measure operational performance in real-time? Do you see any potential downsides to this application? Can you provide an example?arrow_forward
- Database Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781305627482Author:Carlos Coronel, Steven MorrisPublisher:Cengage LearningA Guide to SQLComputer ScienceISBN:9781111527273Author:Philip J. PrattPublisher:Course Technology PtrDatabase Systems: Design, Implementation, & Manag...Computer ScienceISBN:9781285196145Author:Steven, Steven Morris, Carlos Coronel, Carlos, Coronel, Carlos; Morris, Carlos Coronel and Steven Morris, Carlos Coronel; Steven Morris, Steven Morris; Carlos CoronelPublisher:Cengage Learning
- Principles of Information Systems (MindTap Course...Computer ScienceISBN:9781285867168Author:Ralph Stair, George ReynoldsPublisher:Cengage LearningFundamentals of Information SystemsComputer ScienceISBN:9781337097536Author:Ralph Stair, George ReynoldsPublisher:Cengage Learning





