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

Objective this is an individual assignment aimed to give

Objective: This is an individual assignment aimed to give the student exposure to the concepts relating to database systems and optimal strategies for efficient management of databases Learning Outcomes assessed: 1. Crea ...

Fundamentals of databases assignment 1 -q1 explain the

Fundamentals of Databases Assignment 1 - Q1. Explain the distinction between total and partial constraints. Q2. Explain the difference between a weak and a strong entity set. Q3. Explain the distinction between disjoint ...

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 ...

Assignmentyou are to design a program that will serve as a

Assignment You are to design a program that will serve as a database for keeping track of video games and various statistics for the games. This application will allow for the storing of the name of a video game, its gen ...

Database analysis and designimplement the initial database

Database Analysis and Design Implement the initial database design for the Enterprise Resource Planning conceptual model described by the following requirements in your selected RDBMS. You need to create the Entity-Relat ...

Case problem-global site gps - kevin hodge is a production

Case Problem- Global Site GPS - Kevin Hodge is a production assistant at Global Site GPS, a leading manufacturer of GPS devices located in Crestwood, Missouri. One of Kevin's jobs is to monitor output at the company's fi ...

Assignmentthis assignment consists of two sections a design

Assignment This assignment consists of two sections: a design document and a revised Gantt chart or project plan. You must submit both sections as separate files for the completion of this assignment. Label each file nam ...

Database in-class assignment normalizationfor the following

Database In-class Assignment Normalization For the following table, list the functional dependencies and create a database from the table that is in BCNF and 4NF. Movie Rating Showtime Theater The SpongeBob Movie PG 4:00 ...

Tasks objectives1 manage client-server connections using

Tasks Objectives: 1. Manage client-server connections using RDBMS Net Services 2. Evaluate requirements and select appropriate parameters to ensure effective storage management in a database system 3. Manage Redo log inf ...

Problem iyoull be happy to know that we made a strong case

Problem I "You'll be happy to know that we made a strong case to manage¬ment that we should hire a new systems analyst to specialize in ecommerce development," says Al Falfa, a systems analyst for the multi-outlet intern ...

  • 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