Question: Case Description: A software engineering company keeps its employees data in a spreadsheet. Since it is hard to maintain data integrity in a spreadsheet, and
Case Description:
A software engineering company keeps its employees data in a spreadsheet. Since it is hard to maintain data
integrity in a spreadsheet, and also inconvenient and not practical to perform data updates and query processing in
spreadsheet data using a query language such as SQL the company now wants to migrate the data to a relational
database. The spreadsheet currently has the following columns:
EmployeeID FirstName, LastName, SkillName, SkillLevel, HourlyRate
Business Rules:
One employee may have one or more skills such as Java Programming, Python Programming, Database
Administration, etc.
An employee's skill level may be either introductory, Intermediate, or Advanced. For example, an
employee may be an advanced level C programmer but an introductory level Java programmer.
The company pays an hourly rate which depends on the skill and level of that skill. For example:
o Advanced level Java programming has a different hourly rate than advanced level Python
programming.
o Advanced level Java programming has a different hourly rate than Intermediate level Java
programming.
The Task:
As a junior DBA, your task is to design a relational database schema ie a set of tables for the employees
data described above. Please be sure that all tables in the schema are normalized to third normal form NF Each table in the schema should be listed using the following format:
Table Name Primary Key Columns Underlined, Nonkey Column Nonkey Column
Table Name Primary Key Columns Underlined, Nonkey Column Nonkey Column
Table
Step by Step Solution
There are 3 Steps involved in it
1 Expert Approved Answer
Step: 1 Unlock
Question Has Been Solved by an Expert!
Get step-by-step solutions from verified subject matter experts
Step: 2 Unlock
Step: 3 Unlock
