LAB Manual - PART A - PLSQL
LAB Manual - PART A - PLSQL
OUTPUT:
=======
SQL> exec maxmin(10,30,20)
Maximum number is30
Minimum number is10
OUTPUT:
=======
SQL> exec sumnum
sum of first 10 numbers are: 55
5. Write a PL/SQL function that performs simple arithmetic like Addition, Subtraction, and
Multiplication & Division of input numbers.
declare
x number;
y number;
function add(a in number,b in number) return number
is
d number;
begin
d:=a+b;
return d;
end;
function subtract(e in number,f in number) return number
is
g number;
begin
g:=e-f;
return g;
end;
function multiply (h in number,i in number) return number
is
j number;
begin
j:=h*i;
return j;
end;
function divide (k in number,l in number) return number
is
m number;
begin
m:=k/l;
return m;
end;
begin
x:=&x;
y:=&y;
dbms_output.put_line('addition of two numbers:'||add(x,y));
dbms_output.put_line('Subtraction of two numbers:'||subtract(x,y));
dbms_output.put_line('Multiplication of two numbers:'||multiply(x,y));
dbms_output.put_line('Division of two numbers:'||divide(x,y));
end;
/
OUTPUT:
=======
Enter value for x: 10
old 33: x:=&x;
new 33: x:=10;
Enter value for y: 3
old 34: y:=&y;
new 34: y:=3;
addition of two numbers13
Subtraction of two numbers7
Multiplication of two numbers30
Division of two numbers3.33333333333333333333333333333333333333
Table Creation
-------------------
create table employee1(emp_id number(3), emp_name varchar2(20), emp_dob date,
emp_sal number(7), emp_grade char(1), emp_dno number(2));
Record Insertion
--------------------
insert into employee1 values(101,'Allen','10-feb-1992',40000,'C',11);
insert into employee1 values(102,'Banu','21-oct-1996',60000,'B',12);
insert into employee1 values(103,'Deepa','21-Mar-1990',60000,'B',12);
insert into employee1 values(104,’David’,’23-Mar-1992’,50000,’B’,13);
begin
dbms_output.put_line('enter number of records to be inserted');
n := &n;
for i in 1 .. n
loop
insert into employee1
values(&emp_id1,'&emp_name1','&emp_dob1',&emp_sal1,'&emp_grade1',&emp_dno1);
dbms_output.put_line(i || ' row is inserted');
end loop;
end;
/
ii) PL/SQL triggers
------------------------
create or replace trigger trsal
before update of emp_sal
on employee1
for each row
begin
insert into employee_log1
values(:old.emp_id, :old.emp_name,:old.emp_dob,:old.emp_grade, :old.emp_sal);
dbms_output.put_line('previous values are updated in employee log file successfully');
end;
/
Output:
======
Trigger Created.
Output:
======
Previous values are updated in employee log file successfully
Previous values are updated in employee log file successfully
2
Output - Screenshots
---------------------------
Final Output:
===========