DAD 220 Database Documentation Template ROBINSON

docx

School

Southern New Hampshire University *

*We aren’t endorsed by this school

Course

220

Subject

Mechanical Engineering

Date

Feb 20, 2024

Type

docx

Pages

15

Uploaded by KidFlower13108

Report
DAD 220 Database Documentation Template Complete these steps as you work through the directions for Project One. Replace the bracketed text with your screenshots and brief explanations of the work they capture. Each screenshot and its explanation should be sized to approximately one quarter of the page, with the description written below the screenshot. Follow these rules for each of the prompts and questions below. Review the example document located in the Project One Supporting Materials for assistance. Step One: Create a Database 1. Navigate to your online integrated development environment (IDE). List and record the SQL commands that you used to complete this step here: Before beginning you normally must change the MySQL file permissions, however I did it the first time and every time after that it doesn’t allow me to change permissions when I do it just says that my change permissions has been denied. But the commands you would use in Codio to change permissions would be: chmod +X change_perm.sh ./change_perm.sh Then type mysql; 2. Create a database schema called QuantigrationUpdates. List out the database name. Provide the SQL commands you ran against MySQL to successfully complete this in your answer:
Used Command: CREATE DATABASE QuantigrationUpdates; to create the database (its not shown in my screenshot because my codio reset before I could take a screenshot. But I did use the command Show Databases; to show that it was created and is in there. After creating the database I used the command use QuantigrationUpdate; That command changes the database that I am working in so when I create the tables they are saved in the correct database. 3. Using the entity relationship diagram (ERD) as a reference, create the following tables with the appropriate attributes and keys: a. A table named Customers in the QuantigrationUpdates database, as defined on the project ERD. Provide the SQL commands you ran against MySQL to complete this successfully in your answer:
Used Command: CREATE TABLE Customers (CustomerID INT, FirstName VARCHAR(25), LastName VARCHAR(25), StreetAddress VARCHAR(50), City VARCHAR(50), State VARCHAR(25), ZipCode VARCHAR(15), Telephone VARCHAR(15), PRIMARY KEY(CustomerID)); Explanation : That command allowed me to create the table and I used the information from below that shows what information to put in the table to populate the rows and information that will be input into the customers table. I used the command: Select * from Customers; to show that the table is there but there is no rows in the table so it is currently an empty set. I then used the command: show tables; which shows that the table Customers is there. I also did the command Describe Customers; to show that each Field I wanted to enter was entered successfully. b. A table named Orders in the QuantigrationUpdates database, as defined on the project ERD. Provide the SQL commands you ran against MySQL to complete this successfully in your answer:
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Used Command: CREATE TABLE Orders (OrderID INT NOT NULL PRIMARY KEY, CustomerID INT, SKU VARCHAR(20), Description VARCHAR(50), FOREIGN KEY (CustomerID) REFERENCES Customers(CustomerID)); Explanation: The command allowed me to create the table, and using the information in the table below for the rows needed for the fields I made sure to enter them and use the correct capitalization for each field. I then used the command show tables; to make sure the table I created was in the database. From there I used the command describe Orders; to make sure all the fields were entered into the table. c. A table named RMA in the QuantigrationUpdates database, as defined on the project ERD. Provide the SQL commands you ran against MySQL to complete this successfully in your answer: Used Command: CREATE TABLE RMA (RMAID INT NOT NULL PRIMARY KEY, OrderID INT, Step VARCHAR(50), Status VARCHAR(15), Reason VARCHAR(15), FOREIGN KEY (OrderID) REFERENCES Orders(OrderID)); Explanation: after running the command to create the table, and using the RMA diagram I was able to know which entities were Primary keys and which were foreign keys. I was able to create the correct table for the RMA. I then ran the command show tables; to make sure that the RMA was in the table for this database, from there I did the command describe RMA; to ensure that the information from the RMA diagram was in the table. Step Two: Load and Query the Data 1. Import the data from each file into tables. Use the QuantigrationUpdates database, the three tables you created, and the three CSV files preloaded into Codio. Use the import utility of your database program to load the data from each file into the table of the same name. You will perform this step three times, once for each table.
Used Commands: LOAD DATA INFILE '/home/codio/workspace/customers.csv' INTO TABLE Customers FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; For the customer table. LOAD DATA INFILE '/home/codio/workspace/orders.csv' INTO TABLE Orders FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; for the orders table LOAD DATA INFILE '/home/codio/workspace/rma.csv' INTO TABLE RMA FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; for the RMA table. Explanation : By using these import commands, it will populate the tables for customers, orders, and rma with information about each table. When using each command, it shows me how much records were imported into each table. For the Customers table 37994 rows were affected, for the orders table 37994 rows were affected, and for the RMA table it shows that 38162 rows were affected. 2. Write basic queries against imported tables to organize and analyze targeted data. For each query, replace the bracketed text with a screenshot of the query and its output. You should also include a 1- to 3-sentence description of the output. Write an SQL query that returns the count of orders for customers located only in the city of Framingham, Massachusetts. i. How many records were returned?
Command Used: SELECT COUNT(*) FROM Customers INNER JOIN Orders ON Customers.CustomerID = Orders.CustomerID WHERE UPPER(Customers.city) = 'FRAMINGHAM' AND UPPER( Customers.State) = 'MASSACHUSETTS'; Explanation: When using this command it shows me that there are 505 orders from customers in Framingham, Massachusetts. Write an SQL query to select all of the Customers located in the state of Massachusetts. i. Use a WHERE clause to limit the number of records in the Customers table to only those who are located in Massachusetts. ii. Record an answer to the following question: How many records were returned?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Command Used: SELECT COUNT(*) FROM Customers WHERE UPPER(Customers.State) = 'MASSACHUSETTS'; Explanation: By using this select command it pulls up the amount of customers in the state of Massachusetts. The number of customers that was returned was 982. Write a SQL query to insert four new records into the Orders and Customers tables using the following data: Customers Table CustomerID FirstName LastName StreetAddress City State ZipCode Telephone 100004 Luke Skywalker 15 Maiden Lane New York NY 10222 212-555-1234 100005 Winston Smith 123 Sycamore Street Greensbor o NC 27401 919-555-6623 100006 MaryAnne Jenkins 1 Coconut Way Jupiter FL 33458 321-555-8907 100007 Janet Williams 55 Redondo Beach Blvd Torrence CA 90501 310-555-5678 Command Used: INSERT INTO Customers (CustomerID, FirstName, LastName, StreetAddress, City, State, ZipCode, Telephone) VALUES (100004, 'Luke', 'Skywalker', '15 M aiden Lane', 'New York', 'NY', '10222', '212-555-1234'), (100005, 'Winston', 'Smith', '123 Sycamore Street', 'Greensboro', 'NC', '27401', '919-555-6623') , (100006, 'MaryAnne', 'Jenkins', '1 Coconut Way', 'Jupiter', 'FL', '33458', '321-555-8907'), (100007, 'Janet', 'Williams', '55 Redondo Beach Blvd', 'Tor rence', 'CA', '90501', '310-555-5678');
Explanation: I didn’t get the prior screenshot because my codio had another error, but I was able to show that I did use that command to populate the customer table by using the select * command and using the Customer ID’s for the information that was used to populate and add into the customers table. Orders Table OrderID CustomerID SKU Description 1204305 100004 ADV-24-10C Advanced Switch 10GigE Copper 24 port 1204306 100005 ADV-48-10F Advanced Switch 10 GigE Copper/Fiber 44 port copper 4 port fiber 1204307 100006 ENT-24-10F Enterprise Switch 10GigE SFP+ 24 Port 1204308 100007 ENT-48-10F Enterprise Switch 10GigE SFP+ 48 port
Used Command: INSERT INTO Orders (OrderID, CustomerID, SKU, Description) VALUES (1204305, 100004, 'ADV-24-10C', 'Advanced Switch 10GigE Copper 24 port'), (120430 6, 100005, 'ADV-48-10F', 'Advanced Switch 10 GigE Copper/Fiber 44 port copper 4 port fiber'), (1204307, 100006, 'ENT-24-10F', 'Enterprise Switch 10GigE SF P+ 24 Port'), (1204308, 100007, 'ENT-48-10F', 'Enterprise Switch 10GigE SFP+ 48 port'); Explanation: I used a similar command to the one above to populate the Customers table, but changed it for the information needed to update the Orders table. By using this I was able to insert more order information into this table. Then I used the command SELECT * from Orders WHERE CustomerIDIN (100004, 100005, 100006, 100007); to view the order updates from the same customerID’s. In the Customers table, perform a query to count all records where the city is Woonsocket, Rhode Island. i. How many records are in the Customers table where the field “city” equals “Woonsocket”?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Command Used: SELECT COUNT(*) FROM Customers WHERE UPPER(Customers.City) = 'WOONSOCKET'; Explanation: By using this command it shows me that the number of customers from Woonsocket are 7. In the RMA database, update a customer’s records. i. Write an SQL statement to select the current fields of status and step for the record in the RMA table with an orderid value of “5175.” 1. What are the current status and step?
Used Command: SELECT * FROM RMA WHERE OrderID = 5175; Explanation: The command brought me the information on the status and reason for the order number 5175. The current status is pending, the step is awaiting customer documentation. ii. Write an SQL statement to update the status and step for the OrderID , 5175 to status = “Complete” and step = “Credit Customer Account.” 1. What are the updated status and step values for this record?
Command Used: UPDATE RMA SET Status = 'Complete', Step = 'Credit Customer Account' WHERE OrderID = 5175; Explanation: By using the UPDATE for the RMA status I was able to change the status to Complete, and the Step to Credit Customer Account, to ensure that the command I used to change this, I used the command SELECT * FROM RMA WHERE OrderID = 5175; and was able to see that the record had been updated. Delete RMA records. i. Write an SQL statement to delete all records with a reason of “Rejected.” 1. How many records were deleted?
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help
Command Used: DELETE FROM RMA WHERE UPPER(Reason) LIKE '%REJ%'; Explanation: By using the delete command and stating which table I was deleting from, as well as the reason, I was able to delete 596 rows that had the reason of rejected. 3. Update your existing tables from “Customer” to “Collaborator” using SQL based on this change in requirements. Provide the SQL commands you ran against MySQL to complete this successfully in your answer: a. Rename all instances of “Customer” to “Collaborator.”
Command Used: ALTER TABLE Orders DROP FOREIGN KEY Orders_ibfk_1; ALTER TABLE Customers RENAME Collaborators; ALTER TABLE Collaborator DROP PRIMARY KEY;
ALTER TABLE Collaborators CHANGE CustomerID CollaboratorID INT; ALTER TABLE Collaborators ADD PRIMARY KEY(CollaboratorID); ALTER TABLE Orders CHANGE CustomerID Collaborator ID INT; ALTER TABLE Orders CHANGE CustomerID CollaboratorID INT; ALTER TABLE Orders ADD FOREIGN KEY(CollaboratorID) REFERENCES Collaborators(CollaboratorID); Explanation: First I just used ALTER TABLE Customers RENAME Collaborators; but then I changed it back because I realized I also had to change the Primary and Foreign keys, as well as change the customerID to collaborator ID in the table so that it would match the table name. I then used the command show tables; to make sure that the name change had been updated, and then used describe Collaborators; to make sure that I was also able to change the customerID to the CollaboratorID. 4. Create an output file of the required query results. Write an SQL statement to list the contents of the Orders table and send the output to a file that has a .csv extension. Command Used: SELECT * From Orders INTO OUTFILE '/home/codio/workspace/qrma-orders- data85.csv' FIELDS TERMINATED BY ',' LINES TERMINATED BY '\r\n'; Explanation: Using a similar command to input the files into this database, I was able to extract the query results of the orders table and create a .csv The screenshot shows the command used, and it also shows that the .csv file is now in the filetree which showed me that I was successful in extracting the orders file.
Your preview ends here
Eager to read complete document? Join bartleby learn and gain access to the full version
  • Access to all documents
  • Unlimited textbook solutions
  • 24/7 expert homework help