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

Create a data definition class to model one product sold at

Create a data definition class to model one product sold at a bakery. The product will have a description, cost, and quantity in stock. Instance methods include: accessors for each instance variable, non-validating mutat ...

Relational databases with ms access1 create a table

Relational Databases with MS Access 1) Create a table MainMenu with at least 3 fields: ID, caption, and form or report to run 2) Your code (for the button) will dynamically read the caption from the table and assign it t ...

Dfd1 draw a context diagram for the fiat for football

DFD 1. Draw a Context Diagram for the FIAT for Football process. 2. Draw a top level Data Flow Diagram for the FIAT for Football method. 3. Blow up any one non-trivial process into a first level Data Flow Diagram.

Organizations want information organizations need

Organizations want information. Organizations need information. However, information must be in an organized format that supports the creation of business intelligence. Otherwise, according to Rebecca Wettemann, vice pre ...

Database design discusion post and assignmentdiscusion post

Database Design Discusion Post and Assignment Discusion Post: Data as a Corporate Resource and Foreign Keys Please respond to BOTH of the following questions: Question A Discuss how data can be a corporate resource and d ...

Assignment business rules and data modelssuppose a local

Assignment: Business Rules and Data Models Suppose a local college has tasked you to develop a database that will keep track of students and the courses that they have taken. In addition to tracking the students and cour ...

Query 1list all movies played in landmark or music box

Query 1 List all movies played in Landmark or Music Box. Output only titles and eliminate duplicates. Query 2 List all stars born after 1960. Order them by their birthdate in ascending order. Output their first names, la ...

Database design assignmentpart 1customer resource

Database Design Assignment Part 1 Customer Resource Management Database You have been tasked to develop a set of tables for a customer resource management database. You are required to store the following information in ...

This assignment consists of two 2 sections a design

This assignment consists of two (2) 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 name accor ...

Warehouse management system projectproject deliverablesthe

Warehouse management system project Project Deliverables The project requires students to perform three phases: (a) requirements analysis, (b) system and database design, and (c) a project plan. Note that in the phase 3, ...

  • 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