1answer.
Ask question
Login Signup
Ask question
All categories
  • English
  • Mathematics
  • Social Studies
  • Business
  • History
  • Health
  • Geography
  • Biology
  • Physics
  • Chemistry
  • Computers and Technology
  • Arts
  • World Languages
  • Spanish
  • French
  • German
  • Advanced Placement (AP)
  • SAT
  • Medicine
  • Law
  • Engineering
Sonja [21]
3 years ago
14

Assume each student is assigned an advisor from a department. Each classroom is assigned a classroom (class# determines Classroo

m). (Student#, Class#) is the primary key to this relation. Is this relation in 2NF? Justify your answer and decompose if necessary. Assuming each advisor is assigned an office and each advisor belongs to a particular department. Then argue whether further normalization to 3NF is necessary, and if so, perform it.
Computers and Technology
1 answer:
Luden [163]3 years ago
3 0

Answer:

Check the explanation

Explanation:

As we know that any relation will be in 2NF if it satisfies following two conditions

1> It should be in 1NF.

2> It should not contain any partial dependency i.e. all the non-prime attributes should fully functionally dependent on the relation key(s).

In the given table,

The primary key is (Student#,class#).

And one of functional dependency is

Class# determines Classroom (Class# ------> Classroom)

This functional dependency is a partial functional dependency because in this dependency a proper subset(Class#) of a relation key(Student#,Class#)  functionally determines a non-prime attribute(Classroom).

Since this table contains a partial dependency therefore as per the definition of 2NF this table is not in 2NF.

Now we can decompose it into 2NF by splitting the table into the following two tables(R1 and R2).

R1(Student#, Class#, Advisor, Advisor-office, Department) and R2(Class#, Classroom)

R1 table is shown below.

Student# Class# Advisor Advisor-office Department

1011                    101-07 Jones           212    CSCI

1011                    201-02 Jones           212    CSCI

1011                    310-11 Jones           212     CSCI

2010           101-07 Anderson   308    MATH

2010          201-02 Anderson   308    MATH

2010          120-12 Anderson   308    MATH

R2 table is shown below

Class# Classroom

101-07 WIL230

201-02 OVR212

310-11 WIL224

120-12 WIL306

Now these tables(R1 and R2) are in 2NF.

Argument For 3NF

As we know that any relation will be in 3NF if it satisfies following two conditions

1> It should be in 2NF.

Student# Class# Advisor

1011                 101-07 Jones

1011                 201-02 Jones

1011                  310-11 Jones

2010         101-07 Anderson

2010         201-02 Anderson

2010         120-12 Anderson

R12 is shown below

Advisor Advisor-office

Jones          212

Anderson  308

R13 is shown below

Advisor Advisor-office

Jones         CSCI

Anderson MATH

So these four tables (R11, R12, R13, R2) correctly represent the third normal form of the given table.

2> It should not contain any transitive dependency i.e. all the non-prime attributes should be non-transitively dependent on the relation key(s).

Now from the question, we come to know that

1> Each advisor is assigned an office, which means that following functional dependency exists in table R1

Advisor determines Advisor-office (Advisor------> Advisor-office).

2>Each advisor belongs to a particular department, which means that following functional dependency also exists in table R1

Advisor determines Department (Advisor------> Department).

So we have following two dependencies in table R1

1>  Advisor determines Advisor-office (Advisor------> Advisor-office).

2> Advisor determines Department (Advisor------> Department).

Since we know that (Student#,Class#) is a primary key, so it should determine Advisor functionally i.e.

(Student#,Class#)----> Advisor

and from above two conditions we have

Advisor--->Advisor-office and Advisor----->Department

We can clearly see that Advisor---->Advisor-office and  Advisor----->Department are two transitive dependency because Advisor itself is functionally dependent on (Student#, Class#) .

So here we can see that two non prime attributes (Advisor-office and Department) are transitively dependent on the Primary key(Student#,Class#).

Therefore as per definition R1 is not in 3NF. But R2 is in 3NF as per definition.

So we can decompose R1 into 3NF by splitting the table into the following three tables(R11, R12, and R13).

R11(Student#, Class#, Advisor), R12 (Advisor, Advisor-office), and R13(Advisor, Department)  

R11 is shown below

Student# Class# Advisor

1011                101-07 Jones

1011                201-02 Jones

1011                310-11 Jones

2010       101-07 Anderson

2010       201-02 Anderson

2010       120-12 Anderson

R12 is shown below

Advisor Advisor-office

Jones      212

Anderson 308

R13 is shown below

Advisor Advisor-office

Jones          CSCI

Anderson MATH

So these four tables (R11, R12, R13, R2) correctly represent the third normal form of the given table.

You might be interested in
Write a program that takes as input a number of kilometers and prints the corresponding number of nautical miles. Use the follow
Dmitrij [34]
<h2>Answer:</h2>

import java.util.Scanner;

public class NauticalMiles{

   public static void main (String [ ] args){

      Scanner input = new Scanner(System.in);

      System.out.println("Please enter the number of kilometers");

      double km = input.nextDouble();

      double nm = 0.54 * km;

      System.out.println("The corresponding number of nautical miles is "  + nm);

    }

}

<h2>Explanation:</h2><h2></h2>

<em>1 => Pre-code analysis</em>

According to the question,

(a) <em>A nautical mile (nm) is 1 minute of an arc.</em>

=> 1 nm = 1 minute of an arc

(b)<em>There are 90 degrees, each containing 60 minutes of arc, between the North pole and the equator.</em>

=> Each of the degrees in 90 degrees has 60 minutes of arc

=> 1^{0} = 60 minutes of arc

=> 90^{0} = 90 x 60 minutes of arc

=> 90^{0} = 5400 minutes of arc

(c) <em>A kilometer (km) represents 1/10,000 of the distance between the North pole and the equator. </em>

=> A kilometer = (1 / 10000) x distance between the North pole and equator.

Remember that the distance between the North pole and the equator as shown in (b) above is 90 degrees which is equal to 5400 minutes of arc.

=> 1 km = (1 / 10000) x 5400 minutes of arc

=> 1 km = (1 / 10000) x 5400 x 1 minute of arc

As shown in (a) above, 1 minute of arc is 1 nautical mile(nm).

=> 1 km = (1 / 10000) x 5400 x 1 nm

<em>=> 1 km = 0.54 nm.</em>

=========================================================

<em>2 => The code analysis</em>

The code has been written in Java.

The following is the line-by-line explanation of the code written as comments.

// Import the scanner class to allow for user's inputs

import java.util.Scanner;

// Declare the main class to hold and run the application

public class NauticalMiles {

   // Write the main method where execution will begin

   public static void main (String [ ] args) {

      // Create an object <em>input </em>of the Scanner class  

      Scanner input = new Scanner(System.in);

     

      // Prompt the user to enter the number of kilometers

      System.out.println("Please enter the number of kilometers");

      // Store the user's input in a double variable called <em>km</em>

      double km = input.nextDouble();

      // Convert the input to nautical miles using the formula from the

      // pre-code analysis above. i.e 1km = 0.54nm.

      // Store the result in a double variable called <em>nm</em>

      double nm = 0.54 * km;

      // Print out the result (the nautical mile)

      System.out.println("The corresponding number of nautical miles is "  + nm);

    }       // End of main method

}            // End of class declaration

=========================================================

<em>3 => Sample output</em>

<em></em>

> Please enter the number of kilometers

>> <em>45</em>

> The corresponding number of nautical miles is 24.3

8 0
4 years ago
Employing the use of a(n) <br> will help you manage a STEM project.
LiRa [457]

Answer:

technicians

Explanation:

the answer is technicians. in my freshmen year we made flash cards and i still have them so i remember it.

7 0
3 years ago
Pls help computer science I will give brainliest
marissa [1.9K]

Answer:

A driver assists with hardware management.

Hope this helped.

5 0
3 years ago
Read 2 more answers
A(n) _________ Web page displays customized content in response to keyboard or mouse actions or based on information supplied di
RoseWind [281]

Answer:

dynamic

Explanation:

A dynamic web page serves out varied material to various visitors while keeping the same layout and appearance. These pages, which are often built in AJAX, ASP, or ASP.NET, require longer to render than plain static sites. They are commonly used to display data that updates regularly, such as weather forecast or market prices.

Dynamic web pages often incorporate software applications for various services and need server-side resources such as databases. A database enables the page builder to divide the design of the website from the content that will be presented to users. When they post material to the database, the website retrieves it in response to a user request.

5 0
2 years ago
You can create an arraylist using _________. a. new arraylist[] b. new arraylist[100] c. new arraylist&lt;&gt;() d. arraylist()
Tems11 [23]

new ArrayList<>()

ArrayList<data_type> list_name = new ArrayList<>(); The following statement, for instance, can be used to build a generic ArrayList of type String.

ArrayList<String> arraylist = new ArrayList<>(); This will produce a String-type empty ArrayList with the name "arraylist."

Learn more here:

brainly.com/question/16464645

#SPJ4

7 0
2 years ago
Other questions:
  • How can social media be used in "child-driven" education? What benefits can students around the world gain from social media?
    12·1 answer
  • A newspaper publishes a negative editorial on how local politicians are dragging their feet in building a new bridge. Select the
    5·2 answers
  • A help desk manager needs to know the
    15·1 answer
  • An employee who interacts with customers regarding the nature of their car problems, rather than actually working on the vehicle
    6·1 answer
  • If you were looking for a record in a very large database and you knew the ID number, which of the following commands would be t
    10·1 answer
  • Organizations are struggling to reduce and right-size their information foot-print, using data governance techniques like data c
    7·1 answer
  • Why is fluency in information technology becoming increasingly important for many college majors?
    9·2 answers
  • Seven Features of computer aids design software
    6·1 answer
  • Backordered Parts is a defense contractor that builds communications parts for the military. The employees use mostly Web-based
    10·1 answer
  • LaToya is creating a program that will teach young children to type. What keyword should be used to create a loop that will prin
    9·1 answer
Add answer
Login
Not registered? Fast signup
Signup
Login Signup
Ask question!