Ask Question, Ask an Expert


Ask DBMS Expert

Home >> DBMS

In this assignment, you will use the CAR HIRE database. The CAR HIRE database including appropriate data will be made available on the USQ 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, datatypes and the meanings for values in the columns. Familiarise yourself with the tables and the data.


511_I_car group.jpg



2100_I customer.jpg

problem 1:

prepare a stored procedure that accepts the post code in which the customer resides as the input parameter. The procedure should then use an explicit cursor to display comprehensive details about each customer, the number of bookings that customer has made and the total cost of all completed rentals for that customer.


A) Use a fully declared explicit cursor to find and display comprehensive details for each customer.
B) Use an implicit cursor and a SQL function to find out the number of bookings the customer has made. Display the number of bookings.
C) find out the total cost. In order to find out the total cost, you may not use any SQL functions (e.g. SUM) and you must find a way of using local variables to do the arithmetic. Only completed rentals are used in this calculation. When miles_in has a value, the rental is complete. Display the total cost when the computation is complete.

Submit the code and a screen dump of the output when the program is run.

problem 2:

prepare a function that find outs the average miles travelled for a particular car (registration) for all completed bookings made for that car.

prepare a second function that displays the maximum amount paid (amount due) for a particular car (registration) for all completed bookings made for that car.

prepare ONE SQL statement that displays the registration, model_name and date bought for each car and calls the two functions to display the average miles travelled and the maximum amount paid for that car.

Display the output of the SQL statement.

Submit the code and a screen dump of the output.

problem 3:

The company is concerned about hackers making changes to financial details for bookings, in particular the paid flag and the amount due. You will create a database trigger to monitor changes.

Create a copy of the I_BOOKING table in your own schema by using the following command: CREATE TABLE GBOOKING AS SELECT * FROM I_BOOKING. Now, create a database trigger on the GBOOKING table that fires after an UPDATE. The trigger should fire for each row. The trigger should fire if there is any change to  amount_due or paid and should insert the booking number, and the OLD and NEW values of each of these columns into a the table BOOKING_CHANGE. This table may be created using the command: CREATE TABLE BOOKING_CHANGE AS SELECT BOOKING_NO, AMOUNT_DUE, PAID FROM I_BOOKING WHERE BOOKING_NO = 0;

problem 4:

prepare a anonymous block that finds the car that has generated the most revenue (use amount_due here). Only include rentals that are complete. A completed rental involves a situation where the car has been returned and payment may (or may not) have been made. Note that the top car in terms of revenue may not be the same as the top car in terms of rental volume. Also note that, depending upon the date range selected, no car may be selected. Therefore, test with the date range 1 to 31 October, 2012 or a date range of several years. Exclude from your calculations any booking when the miles travelled is less than 100, the rental period is less than two days or the registration begins with a G.  This exclusion should not be done in the select statement i.e. it should be done after the BEGIN using IF.
The anonymous block should display the following: registration and revenue generated.

You may not use any function in this program, for ex SUM, COUNT, AVG, MIN, MAX. Therefore, you will need to use local variables to hold values and perhaps re-use explicit cursors.

Run the anonymous block from ISQLPLUS and include a screen dump of the output.

problem 5:

The table CUSTOMER_MASTER is a mirror of I_CUSTOMER,  BOOKING_MASTER is a mirror of I_BOOKING and CAR_MASTER is a mirror of I_CAR.  None of these tables belong to you but you have read and prepare access to them. prepare PL/SQL stored procedures that insert two rows into the tables CUSTOMER_MASTER AND BOOKING_MASTER and two rows into the table CAR_MASTER. Also, prepare an anonymous block that calls the procedures.

Examine the tables I_CUSTOMER, I_CAR and I_BOOKING carefully first, paying particular attention to the data. Your procedures and anonymous block should meet the following criteria:

A) The anonymous block should display the number of rows currently in each the three tables CUSTOMER_MASTER, CAR_MASTER AND BOOKING_MASTER. Then, the anonymous block should call the procedures and pass all the data to be entered into the tables to the procedures. It is assumed that three procedures will be required (i.e. one per table) but, if you are able to prepare a hybrid procedure to accomplish all the tasks, that is acceptable. Next, the anonymous block should display the total number of rows that the procedures have inserted into the database. Finally, the number of rows in each of the three tables CUSTOMER_MASTER, CAR_MASTER AND BOOKING_MASTER after the inserts should be displayed.

B) The procedures should use parameters to process the data passed from the anonymous block and insert the data into the appropriate table. The procedures should keep a count of each row inserted and pass the count back to the calling anonymous block.

C) For the CAR_MASTER table, you should create a primary key using your own initiative but, for the other two tables, your procedure should find the current highest value of the primary key and allocate the next value.

D) It is expected that you do your best to create data at least of the same standard as the data in the base tables. You will be penalised if you create poor quality data.

E) For the CUSTOMER_MASTER table, your new customers should use one of the town, county and post code combinations used by an existing customer.

F) For the CAR_MASTER table, make sure that the model_name and car_group_name match primary key values in the appropriate tables and that the statistical information (e.g. date bought) is consistent. One car should reflect a date bought somewhere in 2011, the other 2012.

G) For the BOOKING_MASTER table, use the two cars you have created. This will be the most complex insert. Make sure that registration number and model name match rows that already exist in the applicable tables. The person who does the reservation should reflect a name already in the table. The miles in/out columns should be consistent with the mileage values in the CAR_MASTER table and the amount due should be find outd using the rates in the CAR_MASTER table. One row should reflect a completed booking while the other should reflect a booking that is still in progress, i.e. the car has not yet been returned.

H) OUTPUT: Provide a screen dump of your anonymous block and the output created when this is run.

DBMS, Programming

  • Category:- DBMS
  • Reference No.:- M91252

Have any Question? 

Related Questions in DBMS

Assignment - data mining and machine learning in the real

Assignment - Data Mining and Machine Learning in the Real World OBJECTIVE: Learn about some of the things going on in the real-world with Machine Learning and Data Mining. Your answers to the questions in the cells right ...

Listed the five important software components of a dbms the

Listed the five important software components of a DBMS: the DBMS engine, the data definition, data manipulation, application generation, and data administration subsystems. Which of those are most and least important to ...

Career opportunities in your majorknowledge workers

CAREER OPPORTUNITIES IN YOUR MAJOR Knowledge workers throughout the business world are building their own desktop databases (often called end-user databases or knowledge worker databases). To do so, they must understand ...

Your team is a consulting company that specializes in rapid

Your team is a consulting company that specializes in rapid application development. A client company wishes to improve their customer data and interactions records. You create a simple customer relationship system for t ...

Projectinstructionsfor the purpose of grading the project

Project Instructions: For the purpose of grading the project you are required to perform the following tasks: Instructions 1 Open the start file Day Spa that you recently downloaded then Save the workbook as Lastname_Fir ...

Option simulation preparation paperby the end of module 2

Option : Simulation Preparation Paper By the end of Module 2, you will have received the URL, team name (also known as logon ID), and password for the Littlefield Simulation site from your instructor. This week, you must ...

Lab assignment working with additional database objectslab

Lab Assignment: Working with Additional Database Objects LAB OVERVIEW Scenario and Summary There is a lot more to a database than just tables and the data in them. A very important part of database security has to do wit ...

Relational database systems comp 1005objective this is an

Relational Database Systems (COMP 1005) Objective: This is an individual assignment aimed to give the student exposure in understanding, designing, building and analyzing database systems for a given real-time based scen ...

Assignmentas the new manager of a convenience store you

Assignment As the new manager of a convenience store, you have noticed issues with the manual method of tracking sales using paper sales tickets and spreadsheets, as well as, shortages on some of the more popular items c ...

1 what is the most popular database model2 how are primary

1. What is the most popular database model? 2. How are primary and foreign keys different? 3. What are the five important software components of a database management system? 4 What are the four major types of data-minin ...

  • 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

Section onea in an atwood machine suppose two objects of

SECTION ONE (a) In an Atwood Machine, suppose two objects of unequal mass are hung vertically over a frictionless

Part 1you work in hr for a company that operates a factory

Part 1: You work in HR for a company that operates a factory manufacturing fiberglass. There are several hundred empl

Details on advanced accounting paperthis paper is intended

DETAILS ON ADVANCED ACCOUNTING PAPER This paper is intended for students to apply the theoretical knowledge around ac

Create a provider database and related reports and queries

Create a provider database and related reports and queries to capture contact information for potential PC component pro

Describe what you learned about the impact of economic

Describe what you learned about the impact of economic, social, and demographic trends affecting the US labor environmen