Sunday, 22 December 2019

RDS-8


Slip 8
Consider the following entities and their relationships.       
Plan (plan_no, plan_name, nooffreecalls, freecalltime, fix_amt)
Customer (cust_no, cust_name, mobile_no)
Relation between Plan and Customer is One to Many. Constraint: Primary key, fix_amt should be greater than 0.

SQL>Create table plan(pno int primary key,pname varchar(15),nc varchar(15), fct varchar(15),f_amt varchar(15));
SQL>Insert into plan values(1,’summer’,’10’,’10min’,’500’);
SQL>Create table cust(cno int primary key,cname varchar(15),mno int,pno int);
SQL>Insert into cust values(1,’swarup’,9763162617,1);

1)Write a function which will accept plan number from user and display all the details of the selected plan
SQL>set serveroutput on
SQL>create or replace function fun1(nocomp in varchar)return varchar as detalis varchar(10);
  2 begin
  3 select ( plan.pname)into detalis from plan,cust where plan.pno=cust.pno and plan.pno='1';
  4 if sql %found then
  5 return(detalis);
  6 else
  7 return null;
  8 end if;
  9 end fun1;
 10  /
Function created.

SQL>begin
  2 dbms_output.put_line('detalis-'||fun1('1'));
  3 end;
  4 /

2)Write a cursor which will display customer wise plan details.(Use Parameterized Cursor)


SQL> set serveroutput on
SQL> declare
  2    cursor c1(yyyy  cust.cname %type)is select cname,pname from plan,cust  where plan.pno=cust.pno order by cname;
  3    c c1%rowtype;
  4    begin
  5    open c1('&cname ');
  6    loop
  7    fetch c1 into c;
  8    exit when c1%notfound;
  9    dbms_output.put_line(c.cname||''||c.pname);
 10   end loop;
 11    close c1;
 12    end;
 13 
 14  /
Enter value for cname: anita;
old   5:    open c1('&cname ');
new   5:    open c1('anita; ');
anitadiwali
manoharwinter
swarupsummer