Reference no: EM13901092
Learning outcomes
On successful completion of this subject, you should be able to apply database theory to the design and implementation of relational databases; be able to analyse and model business database requirements using Entity Relationship Diagrams (EDR); be able to analyse a database design and apply normalisation theory and techniques; be able to implement a database design using Structured Query Language (SQL); be able to explain the use of transaction processing, security and database integrity in relation to relational databases.
Task
Overview of business case:
Alive & Boating (A&B) is a small start-up company that sells small boats in Wagga. A&B keeps its models in several showrooms across the city. At this stage customers cannot view the available models online so to order they must visit one of the showrooms. A&B has been using an Excel spreadsheet to track their business activities; however, this has caused many redundancies and inefficiency.
With view to their expanding business and under the new management, they decided to investigate the option of implementing a database system. Accordingly, they hired you to design a relational database to better track and record their operational data.
A&B business rules and instructions for creating your ERD:
1. A&B can get boats from several different manufacturers. Each manufacturer produces one or more different types of boats. Each and every type is produced by only one manufacturer. Every manufacturer is identified by a manufacturer code. The company name, street, city, state, postcode, phone number, and account number are kept in the system for every manufacturer. For each type, the type name (i.e. Paddle, Inflatable, Jet Ski, etc.) and purpose (i.e. fishing, day boating, etc.) are kept in the system.
Create an ERD that represents the entities, attributes, the relationships between entities, and the cardinality and optionality of each relationship that are described by this business rule
2. Every type has one or more models. Every model is produced as part of a type. For each model, the model number, engine, length, beam, suggested retail price, A&B retail price and dry weight must be kept in the system.
Add the entities, attributes, the relationships between entities, and the cardinality and optionality of each relationship that are described by this business rule to the same copy of the ERD that you created for business rule 1.
3. Each type's models are stored in a specific warehouse. Each warehouse stores the models of only one type. Each warehouse is identified by a warehouse ID. For each warehouse address, postcode, phone number are kept in the system.
Add the entities, attributes, the relationships between entities, and the cardinality and optionality of each relationship that are described by this business rule to the same copy of the ERD that you created for business rule 1 and business rule 2.
Task
Table 1: GRADE REPORT relation
Student_ ID
|
Student_ Name
|
Campus_ Address
|
Major
|
Course_ ID
|
Course_ Title
|
Instructor_ Name
|
Instructor_ Location
|
Grade
|
16830058
|
Williams
|
Albury
|
BIT
|
ITC114
|
Database Sys
|
Peter
|
B104
|
HD
|
16830058
|
Williams
|
Albury
|
BIT
|
ITC211
|
Sys Analysis
|
John
|
B115
|
D
|
543291073
|
Baker
|
Wagga
|
Acct
|
ITC200
|
Database Mgt
|
David
|
H310
|
D
|
543291073
|
Baker
|
Wagga
|
Acct
|
Acc11
|
Fund Acct
|
William
|
A120
|
C
|
543291073
|
Baker
|
Wagga
|
Acct
|
Mkg21
|
Intro Mkt
|
Mike
|
A112
|
P
|
Using Table 1: GRADE REPORT relation above
1. Draw a dependency diagram to show the functional dependencies in the relation
2. Decompose GRADE REPORT into a set of 3NF relations
3. Draw a relational schema for your 3NF relations and show the referential integrity constraints
Task
NOTES
This assignment encourages you to use SQLite to complete the tasks listed below. The instructions listed below relate to SQLite.
For guidance on how to install SQLite, watch this short YouTube video: https://www.youtube.com/watch?v=YZQuQ6jael8
For guidance on how to create tables using SQLite, watch this short YouTube video: https://www.youtube.com/watch?v=Ev2JnjavvmE
You are welcome to use MySQL . The instructions for using MySQL will be placed in the Students Resources Folder.
To use other packages, please seek the approval of your subject coordinator. Typing the SQL statements or the results is NOT acceptable.
Instructions
From Resources under Main Menu in Interact 2 go to Students Resources Folder
Copy sqlite3.exe and cmd.exe files from the Students Resources Folder into a folder in your machine
Copy a5.txt from the Students Resources Folder into the folder in your machine where your SQLite file is located
Open a5.txt in Notepad
Replace your studentid in line .output your studentid .txt in a5.txt with your actual studentid i.e. for example 45446667.txt
From the Command Prompt type sqlite3.exe your studentid.db
Note: From the Command Prompt call the folder in your machine where your SQLite file is located before you type sqlite3.exe yourstudentid.db
At the SQLite Command Line type .read a5.txt [to create the tables you will use to answer this assignment's questions]
At the SQLite Command Line type .quit
Using WordPad open your studentid .txt [to check the tables you created exist]
From the Command Prompt type sqlite3
At the SQLite Command Line type .open your studentid.db
At the SQLite Command Line type .headers on At the SQLite Command Line type .mode column
Write and run SQL statements to complete the following tasks
1. Show all the details of the products by v_code 21344
2. Locate the record in the vendor table that does not have a value for the attribute V_STATE
3. Find the customers whose balance is greater than 200 but less than 300.
4. What is the max balance?
5. Show the names of the customers for whom we have invoices.
6. Show the CUS_CODE of the customers for whom we DO NOT have invoices.
7. Show the names of the customers for whom we DO NOT have invoices.
8. Find out how many times a customer generated an invoice.
9. List the names of the customers and how many times a customer generated an invoice.
10. Add a new attribute (field) credithistory varchar(6) to the customer table.
11. Update credithistory for customer '10011' to 'Bad'.
12. Delete the employee Leighla Genkazi from the EMP table.
You are required to submit:
1. The SQL statements for each query, which should be copied from your SQLite3 Command Line and pasted into your submission file
2. The screenshots of the results of the SQL statements which are to be copied from your SQLite3 Command Line and pasted into your submission file immediately after you execute the SQL query. If you used an output file please submit only the output file