Home » RDBMS Server » Server Administration » IF Statement
IF Statement [message #371874] Fri, 15 December 2000 14:36
asma
Messages: 12
Registered: December 2000
Junior Member
** What's the wrong in this procedure it doesn't go through if clause it goes directly to else clause under any codition ...

create or replace
procedure findroom(
p_name IN VARCHAR2,
p_phone IN NUMBER,
p_country IN VARCHAR2,
p_city IN VARCHAR2,
p_address IN VARCHAR2,
p_email IN VARCHAR2,
p_cridittype IN VARCHAR2,
p_criditno IN VARCHAR2,
p_criditexp IN DATE,
p_nameoncard IN VARCHAR2,
p_arrivaldate IN DATE,
p_arrivaltime IN VARCHAR2,
p_am_pm IN VARCHAR2,
p_checkout IN DATE,
p_numadult IN NUMBER,
p_numchildren IN NUMBER,
p_roomtype IN VARCHAR2)
is
begin
begin
declare
newconfirmation# custlist.confirmation#%type;
new2confirmation# rreservation.custconfirmation#%type;
cursor check_availability is
select custconfirmation#,confirmation#
from room , rreservation , custlist
where (Room.roomno = rreservation.custroomno and Room.roomtype = p_roomtype and rreservation.checkout > p_arrivaldate )
or (custlist.roomtype = p_roomtype and
custlist.checkout > p_arrivaldate);
begin
open check_availability;
loop
fetch check_availability into newconfirmation#, new2confirmation#;
exit when check_availability%NOTFOUND;
end loop;
if check_availability%rowcount < 100 and (p_roomtype ='single' or p_roomtype ='twin/doubl')
then
insert into custlist (name,phone,country,city,address,email,cridittype,criditno,
criditexp,nameoncard,arrivaldate,arrivaltime,am_pm,checkout,numadult,numchildren,roomtype,confirmation#)
values (p_name,p_phone,p_country,p_city,p_address,p_email,
p_cridittype,p_criditno,p_criditexp,p_nameoncard,
p_arrivaldate,p_arrivaltime,p_am_pm,p_checkout,p_numadult,
p_numchildren,p_roomtype,conf#.nextval);
htp.p('First if');
elsif check_availability%rowcount < 30 and
p_roomtype ='excutive suite' then
insert into custlist (name,phone,country,city,address,email,cridittype,criditno, criditexp,nameoncard,arrivaldate,arrivaltime,am_pm,checkout,numadult,numchildren,roomtype,confirmation#)
values (p_name,p_phone,p_country,p_city,p_address,p_email,
p_cridittype,p_criditno,p_criditexp,p_nameoncard,
p_arrivaldate,p_arrivaltime,p_am_pm,p_checkout,p_numadult,
p_numchildren,p_roomtype,conf#.nextval);
htp.p('second if');
elsif check_availability%rowcount < 10 and p_roomtype =
'delux suite' then
insert into custlist (name,phone,country,city,address,email,cridittype,criditno, criditexp,nameoncard,arrivaldate,arrivaltime,am_pm,checkout,numadult,numchildren,roomtype,confirmation#)
values (p_name,p_phone,p_country,p_city,p_address,p_email,
p_cridittype,p_criditno,p_criditexp,p_nameoncard,
p_arrivaldate,p_arrivaltime,p_am_pm,p_checkout,p_numadult,
p_numchildren,p_roomtype,conf#.nextval);
htp.p('theard if');

else
htp.p('There is not available room from this type');
end if;
end;
end;
end;

Thanx..
Previous Topic: What is Jserve?
Next Topic: Re: Random number generator in PL/SQL
Goto Forum:
  


Current Time: Sat May 04 09:02:23 CDT 2024