| /* procedure for inputting a reservation*/ create or
replace procedure create_reservation
(resv_id_parm IN number,
cust_id_parm IN number,
lname_parm IN varchar2,
fname_parm IN varchar2,
car_type_parm IN number,
pick_up_period_parm IN Date,
pick_up_site_parm IN varchar2,
drop_off_period_parm In Date,
Drop_off_site_parm IN varchar2,
comments_parm IN varchar2,
quantity_parm IN number,
cc_no_parm IN varchar2,
cc_type_parm IN varchar2,
cc_exp_parm IN Date,
option_id_parm IN number)
AS
BEGIN
insert into reservation(resv_id,
cust_id,
lname,
fname,
car_type,
pick_up_period,
pick_up_site,
drop_off_period,
Drop_off_site,
comments,
quantity,
cc_no,
cc_type,
cc_exp,
option_id)
VALUESresv_id_parm,
cust_id_parm,
lname_parm,
fname_parm,
car_type_parm,
pick_up_period_parm,
pick_up_site_parm,
drop_off_period_parm,
Drop_off_site_parm,
comments_parm,
quantity_parm,
cc_no_parm,
cc_type_parm,
cc_exp_parm,
option_id_parm);
END;
/ |
|
/* procedure for inputing a rental*/
create or replace procedure create_rental
(rental_id_parm IN number,
cust_id_parm IN number,
car_type_parm IN number,
vin_parm IN varchar2,
resv_id_parm IN number,
pick_up_site_parm IN varchar2,
pick_up_period_parm IN Date,
Drop_off_site_parm IN varchar2,
drop_off_period_parm IN Date,
car_status_parm IN varchar2
cc_type_parm IN varchar2,
cc_no_parm IN varchar2,
cc_exp_parm IN Date,
cc_auth_no_parm IN varchar2,
payment_method_parm IN varchar2,
driver_license_no_parm IN varchar2,
daily_rate_parm IN number,
car_reg_no_parm IN varchar2,
amount_parm IN number)
AS
BEGIN
insert into rental(rental_id,
cust_id,
car_type,
vin_parm,
resv_id,
pick_up_site,
pick_up_period,
drop_off_site,
drop_off_period,
car_status,
cc_type,
cc_no,
cc_exp,
cc_auth_no,
payment_method,
driver_license_no,
daily_rate,
car_reg_no,
amount)
VALUES(rental_id_parm,
cust_id_parm,
car_type_parm,
vin_parm,
resv_id_parm,
pick_up_site_parm,
pick_up_period_parm,
Drop_off_site_parm,
drop_off_period_parm,
car_status_parm,
cc_type_parm,
cc_no_parm,
cc_exp_parm,
cc_auth_no_parm,
payment_method,
driver_license_no_parm,
daily_rate_parm,
car_reg_no_parm,
amount_parm);
END;
/ |
|
/ * trigger for calc rental amount */ create or
replace trigger rental_amount
after insert on RENTAL
FOR EACH ROW
DECLARE
ren_id integer;
begin
ren_id := :new.Rental_ID;
execute rental_amount_calc(ren_id);
end;
/
create procedure rental_amount_calc (ren_id IN number)
begin
update RENTAL set Amount =
(Daily_Rate * (Drop_Off_Date - Pick_Up_Date))
where rental_id = ren_id;
end;
/ |