Assignment 6: SQL Concepts and Database Design
Due Week 7 and worth 90 points
The Strayer Oracle Server may be used to test and compile the SQL Queries developed for this assignment. Your instructor will provide you with login credentials to a Strayer University maintained Oracle server.
Imagine that you work for a finance industry-based organization. Your organization is looking to submit its database design documentation to an evaluation team in order to meet Sarbanes-Oxley (SOX) compliance. You have been assigned to assist in preparing the documentation of the organization’s sales database. You are asked to propose a data dictionary that can be used to document the following:
- Employee (EmpNumber, EmpFirstName, EmpLastName, CommissionRate, YrlySalary, DepartmentID, JobID)
- Invoice (InvNumber, InvDate, EmpNumber, InvAmount, CustomerID)
- InvoiceLine (InvLineNumber, InvNumber, ProductNumber, Quantity)
- Product (ProductNumber, ProductDescription, ProductCost)
- Department (DepartmentID, DepartmentDescription)
- Job (JobID, JobDescription)
- Customer (CustomerID, CustomerName, CustomerAddress, CustomerPhone)
Write a three to four (3-4) page paper in which you:
- Create a data dictionary that includes the following:
- A description of the content for each field
- The data type of each field
- The format the data will be stored as in the field
- The range of value for the field
- A label, as required, if the attribute is a primary key or foreign key
Note: An example is shown in Table 7.3 in chapter 7 of the textbook.
- Imagine that you are asked to identify the number of days that exist between the first invoice and last invoice for each month and complete the following:
- Construct a query that will show the number of days that exist between the first invoice and last invoice, for each month, for each employee, using the DATEDIFF function. Be sure to provide the SQL script that will carry out this function.
- Construct a query to show the expected payment date if invoices are due within 30 days of transaction.
- Construct a query that will show distinct area codes of the customers.
- Create a plan of the necessary activities that would be required to implement a valid database design process by including the following:
- Steps in the conceptual design stage
- Steps in DBMS selection stage
- Steps in logical design stage
- Steps in physical design stage
- Task details of each activity within each stage
Your assignment must follow these formatting requirements:
- Be typed, double spaced, using Times New Roman font (size 12), with one-inch margins on all sides; citations and references must follow APA or school-specific format. Check with your professor for any additional instructions.
- Include a cover page containing the title of the assignment, the student’s name, the professor’s name, the course title, and the date. The cover page and the reference page are not included in the required assignment page length.
The specific course learning outcomes associated with this assignment are:
- Design a relational database so that it is at least in 3NF.
- Prepare database design documents using the data definition, data manipulation, and data control language components of the SQL language.
- Explain the key principles of data security and identify data security risk and violations in data management system design.
- Use technology and information resources to research issues in the strategic implications and management of database systems.
- Write clearly and concisely about topics related to the strategic planning for database systems using proper writing mechanics and technical style conventions.