[SOLVED] Database Design and Analysis. Use the Accidents_2016.csv file below to implement the following steps for your database project.

I need an explanation for this MySQL question to help me study.

Struggling to find relevant content or pressed for time? – Don’t worry, we have a team of professionals to help you on
[SOLVED] Database Design and Analysis. Use the Accidents_2016.csv file below to implement the following steps for your database project.
Get a 15% Discount on this Paper
Order Now
  1. Create a MySQL schema named “accidents.”
  2. Within the accidents schema, create a table named accidents_2016 with the following columns:
    • accident_index as a varchar(13),
    • accident_severity as an int
  3. Within the accidents schema, create a table named vehicles_2016 with the following columns:
    • accident_index as a varchar(13),
    • vehicle_type as a varchar(10)
  4. Within the accidents schema, create a table named vehicle_type with the following columns:
    • vcode int,
    • vtype as a varchar(100)
  5. Next, you will load the data for the three tables.
    • Load the accidents data. Note that @dummy is a placeholder for a column in the .csv file that you want to ignore during the load.
load data local infile '…dataAccidents_2016.csv'
into table accidents_2016
fields terminated by ','
enclosed by '"'
lines terminated by 'n'
ignore 1 lines
(@col1, @dummy, @dummy, @dummy, @dummy, @dummy, @col2
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
) 
set accident_index=@col1,accident_severity=@col2;
  • Load the vehicle data.
load data local infile '…dataVehicles_2016.csv'
into table vehicles_2016
fields terminated by ','
enclosed by '"'
lines terminated by 'n'
ignore 1 lines
(@col1, @dummy, @dummy, @col2
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
,@dummy, @dummy, @dummy, @dummy, @dummy
)
set accident_index=@col1,vehicle_type=@col2;
  • Load the vehicle type data.
load data local infile  '…datavehicle_type.csv'
into table  vehicle_type
fields  terminated by ','
enclosed by  '"'
lines  terminated by 'n'
ignore 1  lines
  1. After the data are loaded, you will perform the analysis. First, find the average accident severity and the number of accidents for vehicles of type motorcycle. Note the performance of your query. Your query may run so slowly that MySQL aborts running completing.
  2. Improve Query Performance
    • Look at the explain tool output and save the results to a graphic file.
    • From the explain results, how many rows have to be read per join?
    • Add an index named “accident_index” of type “index” on the accident_index
    • column in the accidents_2016 table and another index named “accident_index” of type “index” on the vehicles_2106 table.
alter table accidents_2016
add index accident_index (accident_index asc);
alter table vehicles_2016
add index accident_index (accident_index asc);

After adding the indices, rerun the query explanation tool and determine the number of rows to be read per join.

  1. Find the median accident severity.

MySQL does not have a median function so to find the median accident severity, you will have to write a Python script.

  • You’ll need to install Python and the PyMySQL module.
  • Install Python version 2.7 or 3.4 from www.python.org.

To install the PyMySQL module, run the following command in a Windows command prompt after Python has been installed:

python -m pip install  --index-url=https://pypi.python.org/simple/ --trusted-host pypi.python.org PyMySQL

b) Create an accident median table

create  table accident_medians
(
       vtype varchar(100),
       severity int
);
  • Run the following Python script:
import pymysql
myConnection  = pymysql.connect(host='localhost', user='****', passwd='****', db='accidents')
cur = myConnection.cursor()
cur.execute('SELECT vtype FROM vehicle_type WHERE  vtype LIKE "%otorcycle%";')
cycleList = cur.fetchall()
selectSQL = ('''
                SELECT  t.vtype, a.accident_severity
                FROM accidents_2016 AS a
                JOIN vehicles_2016 AS v ON  a.accident_index = v.Accident_Index
                JOIN vehicle_type AS t ON  v.Vehicle_Type = t.vcode
                WHERE t.vtype LIKE %s
                ORDER BY  a.accident_severity;''')
insertSQL = ('''INSERT INTO accident_medians  VALUES (%s, %s);''')
                
for cycle  in cycleList:
                cur.execute(selectSQL,cycle[0])
                accidents = cur.fetchall()
                quotient, remainder =  divmod(len(accidents),2)
                if  remainder:
                                med_sev =  accidents[quotient][1]
                else:
                                med_sev =  (accidents[quotient][1] + accidents[quotient+2][1])/2
                print('Finding median  for',cycle[0])
                cur.execute(insertSQL,(cycle[0],med_sev))
myConnection.commit()
myConnection.close()

Write each query you used in Steps 1 – 8 in a text file. If a query produced a result set, then list the first ten rows of each row set after the query.

Calculate the price
Make an order in advance and get the best price
Pages (550 words)
$0.00
*Price with a welcome 15% discount applied.
Pro tip: If you want to save more money and pay the lowest price, you need to set a more extended deadline.
We know how difficult it is to be a student these days. That's why our prices are one of the most affordable on the market, and there are no hidden fees.

Instead, we offer bonuses, discounts, and free services to make your experience outstanding.
Sign up, place your order, and leave the rest to our professional paper writers in less than 2 minutes.
step 1
Upload assignment instructions
Fill out the order form and provide paper details. You can even attach screenshots or add additional instructions later. If something is not clear or missing, the writer will contact you for clarification.
s
Get personalized services with MyCoursebay
One writer for all your papers
You can select one writer for all your papers. This option enhances the consistency in the quality of your assignments. Select your preferred writer from the list of writers who have handledf your previous assignments
Same paper from different writers
Are you ordering the same assignment for a friend? You can get the same paper from different writers. The goal is to produce 100% unique and original papers
Copy of sources used
Our homework writers will provide you with copies of sources used on your request. Just add the option when plaing your order
What our partners say about us
We appreciate every review and are always looking for ways to grow. See what other students think about our do my paper service.
IT, Web
Excellent job on the paper.
Customer 452885, January 25th, 2023
public speaking
The work was excelent and very professional.
Customer 452653, November 1st, 2021
Human Resources Management (HRM)
Thank you.
Customer 452701, April 24th, 2023
Human Resources Management (HRM)
Thank you
Customer 452531, May 19th, 2021
Nursing
Amazing as always!!! :)
Customer 452453, March 16th, 2023
Nursing
The writing was very supportive
Customer 453053, May 2nd, 2025
Human Resources Management (HRM)
Thanks
Customer 452701, August 15th, 2023
Social Work and Human Services
Perfect. Thank you.
Customer 452469, July 10th, 2021
Social Work and Human Services
Great Work!
Customer 452587, August 31st, 2021
Technology
Great job on the paper!
Customer 452885, December 14th, 2022
Nursing
Top notch quality!
Customer 452453, February 16th, 2023
Nursing
Thank you for the great job and timely delivery.
Customer 452457, December 18th, 2020
OUR GIFT TO YOU
15% OFF your first order
Use a coupon FIRST15 and enjoy expert help with any task at the most affordable price.
Claim my 15% OFF Order in Chat

Good News ! We now help with PROCTORED EXAM. Chat with a support agent for more information