Ask Computer Engineering Expert

In this assignment, you will use the CAR HIRE database. The CAR HIRE database including appropriate data will be made available on the University Oracle server. You can query these tables as if they are in your own schema but you are not permitted to insert or update data in these tables. The specification for the CAR HIRE database is as follows:

The table descriptions appear below, including the column names, data types and the meanings for values in the columns. Familiarise yourself with the tables and the data.

Important Questions Restrictions.

A number of questions will impose which statements are allowed in the solution. They usually have to do with restricting the type of aggregate functions you are allowed to use for the solution. For example, they might specify that you are not to use the SUM function but instead sum the values using the loop operations. Please follow the restrictions closely. They are in place to make you better understand the operations and execution of the PL/SQL. You will be penalised for not following the restrictions.

Please read the questions carefully and make sure you format the output as requested.

I_CAR

I_CARGROUP

I_MODEL

I_CUSTOMER

I_BOOKING

Question 1

Write an anonymous block that places a substitution variable (&) into a local variable of type varchar2. You will need to convert the types and round them to nearest tens unit. For example 84.4555 would be 84.5. You should check the value entered in the local variable and output different messages depending on the value provided. The anonymous block is a simple grade calculator with the following rules.

If value less than 44.5 output the following message "Resulting Grade for VALUE marks is ‘F'"
If value is between 44.5 and 49.4 output the following message "Resulting Grade for VALUE marks is ‘IS'"
If value is between 49.5 and 64.4 output the following message "Resulting Grade for VALUE marks is ‘C'"
If value between 64.5 and 74.4 output the following message "Resulting Grade for VALUE marks is ‘B'"
If value is between 74.5 and 84.4 output the following message "Resulting Grade for VALUE marks is ‘A'"
If value is between 84.5 and 100 output the following message "Resulting Grade for VALUE marks is ‘HD'"
If the value does not fall in the range of 0 - 100 print an error message "ONLY MARKS BETWEEN 0 AND 100 ACCEPTED)"

Note: The ‘VALUE' in the message is to be replaced by the value of the substitution local variable value.

Single quotes are required around the grade results.

Sample run and output:

To be submitted:

Structured documented code to solve the problem listed.
Sample execution screens captures with output for following test values:
110, 44.45, 49.5, 70.07, 86.67
You will need to run your solution once for every test value and capture the resulting screen output.

Question 2

Write an anonymous block that meets the following specification:

1. Using an explicit cursor, retrieve each row from the i_car table.

2. Create a local variable that inherits the structure of the i_car table (using %ROWTYPE attribute). Place each row returned into this variable.

3. Using an implicit cursor, calculate the number of bookings that belong to each car.

4. Display the car registration, car group name, model name and the number of bookings for all the cars that have two or more bookings.

5. If the car has no bookings sum up the number of cars without bookings.

6. At the end of the run display a message "There are VALUE cars that have no bookings recorded".

Note: The VALUE is to be replaced with the total number of cars found during the process without bookings. The VALUE needs to be calculates during the explicit cursor execution.

You can only use one COUNT( ) statement for your solution in the body of the anonymous block.

To be submitted:

Structured documented code to solve the problem listed.

Screenshot of the output after executing your solution.

Question 3

Create a bound/host (or global) variable named G_NEWCOST.

Write an anonymous block that declares two local variables: A3_COST and B3_COST. The data types of these two variables should be the same as the data type of the columncost ini_car table. Also declare a constant called DEPRECIATION with value 15.25 to be used for deprecation calculation.

In your BEGIN section, write two SELECT queries to obtain value of thecost column wherecar_group_name is ‘A3' and ‘B3' and assign the corresponding values to A3_COST and B3_COST variables.
Now use the IF-THEN statement to compare the two variables to find out which one has a highest value. Calculate the new cost by using constant DEPRECIATION to calculate the new valuetotal cost * ((100 - DEPRICATION)/100) to the higher value and assign the new value to bound/host variable G_NEWCOST.
Display a message in the following format from your code block: "The car group CARGROUP has total cost of $TOTALCOST.XX and has been depreciated to $G_NEWCOST.XX"
TheCARGROUP should display the highest car group (A3 or B3 depending on values).
TheTOTALCOST will be the total calculated in the SELECT query statement.
G_NEWCOST will be the derived value after decreasing the cost with the DEPRECIATION value. Format theG_NEWCOST value to 2 decimal places.
TheXX represent the decimal places in the format.

Using the PRINT command, output the value in the host variable (G_NEWCOST) after the anonymous block has run.

To be submitted:
Structured documented code to solve the problem listed.
Output screenshot after running the code with the message as requested.
Output screenshot after executing the PRINTG_NEWCOST statement.

Question 4

Write a PL/SQL solution that displays the registration and the maximum and the minimum miles travelled by a car during the rental period for all the bookings where the booking has been paid for.
The output from the anonymous block will be two messages. One message will display the information for the maximum miles driven and one for the minimum miles driven in the following format.
"The maximum miles driven was MAXIMUM by car REGISTRATION over DAYS day's"
"The minimum miles driven was MINIMUM by car REGISTRATION over DAYS day's"
WhereMAXIMUM is the maximum miles calculated from the bookings table.
MINIMUM is the minimum miles calculated in the bookings table.
DAYS is the rental_period for the maximum and minimum miles travelled in the booking table.

Your program must use at least one explicit cursor and must NOT use any aggregate functions, for example SUM, MAX, COUNT, etc.

(Hint: miles driven for each booking will need to be calculated. Only the bookings where the booking has been paid for should be processed. All the information for the program is located in the i_booking table)

MARKING CRITERIA

1. The code produces the required output.

2. The code is appropriately structured and documented

3. The code addresses the specification.

4. The code provides a solution and covers every element in the specification.

5. The code has at least one explicit cursor

6. The code has no aggregate SQL functions.

7. The code adopts an optimal and sophisticated approach to PL/SQL.

To be submitted:

Structured documented code to solve the problem listed.

Screenshot of the output after executing your solution.

Computer Engineering, Engineering

  • Category:- Computer Engineering
  • Reference No.:- M91671919
  • Price:- $20

Priced at Now at $20, Verified Solution

Have any Question?


Related Questions in Computer Engineering

Does bmw have a guided missile corporate culture and

Does BMW have a guided missile corporate culture, and incubator corporate culture, a family corporate culture, or an Eiffel tower corporate culture?

Rebecca borrows 10000 at 18 compounded annually she pays

Rebecca borrows $10,000 at 18% compounded annually. She pays off the loan over a 5-year period with annual payments, starting at year 1. Each successive payment is $700 greater than the previous payment. (a) How much was ...

Jeff decides to start saving some money from this upcoming

Jeff decides to start saving some money from this upcoming month onwards. He decides to save only $500 at first, but each month he will increase the amount invested by $100. He will do it for 60 months (including the fir ...

Suppose you make 30 annual investments in a fund that pays

Suppose you make 30 annual investments in a fund that pays 6% compounded annually. If your first deposit is $7,500 and each successive deposit is 6% greater than the preceding deposit, how much will be in the fund immedi ...

Question -under what circumstances is it ethical if ever to

Question :- Under what circumstances is it ethical, if ever, to use consumer information in marketing research? Explain why you consider it ethical or unethical.

What are the differences between four types of economics

What are the differences between four types of economics evaluations and their differences with other two (budget impact analysis (BIA) and cost of illness (COI) studies)?

What type of economic system does norway have explain some

What type of economic system does Norway have? Explain some of the benefits of this system to the country and some of the drawbacks,

Among the who imf and wto which of these governmental

Among the WHO, IMF, and WTO, which of these governmental institutions do you feel has most profoundly shaped healthcare outcomes in low-income countries and why? Please support your reasons with examples and research/doc ...

A real estate developer will build two different types of

A real estate developer will build two different types of apartments in a residential area: one- bedroom apartments and two-bedroom apartments. In addition, the developer will build either a swimming pool or a tennis cou ...

Question what some of the reasons that evolutionary models

Question : What some of the reasons that evolutionary models are considered by many to be the best approach to software development. The response must be typed, single spaced, must be in times new roman font (size 12) an ...

  • 4,153,160 Questions Asked
  • 13,132 Experts
  • 2,558,936 Questions Answered

Ask Experts for help!!

Looking for Assignment Help?

Start excelling in your Courses, Get help with Assignment

Write us your full requirement for evaluation and you will receive response within 20 minutes turnaround time.

Ask Now Help with Problems, Get a Best Answer

Why might a bank avoid the use of interest rate swaps even

Why might a bank avoid the use of interest rate swaps, even when the institution is exposed to significant interest rate

Describe the difference between zero coupon bonds and

Describe the difference between zero coupon bonds and coupon bonds. Under what conditions will a coupon bond sell at a p

Compute the present value of an annuity of 880 per year

Compute the present value of an annuity of $ 880 per year for 16 years, given a discount rate of 6 percent per annum. As

Compute the present value of an 1150 payment made in ten

Compute the present value of an $1,150 payment made in ten years when the discount rate is 12 percent. (Do not round int

Compute the present value of an annuity of 699 per year

Compute the present value of an annuity of $ 699 per year for 19 years, given a discount rate of 6 percent per annum. As