Quontra Solutions is a leading training institute providing Online training and have the best Trained and Certified Consultants on place and having more than 7 years of experience...
SQL PL/SQL Online Training
SQL
• Basic SQL Statement, SELECT,FROM Clause
• Sorting : ORDER BY , WHERE Clause
• Singlerowfun
• Multiple Tables Data – Joins
• Group Functions – GROUP BY Clause
• Sub Queries
• Manipulating data
• Create tables
• constraints
• views
• indexes
• useraccess.
• Datetime
• SET Operators
• Hierarchial Table Design, Query
• Database Architecture
• SQL DataModeller
• ERD Concepts
PL SQL
• variables
• interaction_for_loop_if_else
• composite data type
• cursors – 3 types
• Exceptions
• procedures
• functions
• packages
• BULK Concepts – Update, Delete, Insert
• Triggers
• Oracle Supplied Packages
• LOB Concepts
• UTL_FILE Concepts
• Custom Schema Development
• Custom Packages Development
Database : Oracle Database 11G Schema : HR, SCOTT, SYSTEM
Tool 1 : SQL Developer
Tool 2 : SQL Developer Data Modeller ERD Design
Tool3 : TOAD
We free Market your Resume and Provide online training videos for your future reference which you’re attended…
Call us for Free Demo
Contact :
(404)-900-9988 (USA)
Email Id : info@quontrasolutions.com
Website: http://www.quontrasolutions.com
4. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Creating or Replacing a Function
CREATE OR REPLACE FUNCTION sum_dept_sal(p_deptno IN NUMBER)
RETURN emp.sal%TYPE IS
v_sum_sal emp.sal%TYPE;
BEGIN
SELECT SUM(sal)
INTO v_sum_sal
FROM emp
WHERE deptno = p_deptno;
RETURN v_sum_sal;
END;
/
info@quontrasolutions.co.uk
7. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Exercise
• Write down a procedure that displays all
records (all columns) from EMP table. Make
sure program should restricted to fix number
of records of this table. Display Date and TIME
portions of column that has data type DATE.
• Write down a procedure that can insert large
number of records entered at the time of its
execution. You can use EMP table and
appending counter with some columns’ values
info@quontrasolutions.co.uk
9. www.quontrasolutions.co.uk info@quontrasolutions.co.u
Package Specification
CREATE OR REPLACE PACKAGE emp_info is
v_count INTEGER;
PROCEDURE insert_record( p_empno IN NUMBER
, p_ename IN VARCHAR2
, p_job IN VARCHAR2
, p_sal IN NUMBER
, p_co.ukm IN NUMBER
, p_deptno IN VARCHAR2);
PROCEDURE delete_record(p_empno IN NUMBER);
FUNCTION sum_dept_sal( p_deptno IN dept.deptno%TYPE) RETURN is dept.sal%TYPE;
END emp_info;
/
k
info@quontrasolutions.co.uk
10. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Package Body
CREATE OR REPLACE PACKAGE BODY emp_info is`
PROCEDURE insert_record(p_empno IN NUMBER,p_ename IN VARCHAR2,
p_job IN VARCHAR2,p_sal IN NUMBER,
p_co.ukm IN NUMBER,p_deptno IN VARCHAR2) IS
BEGIN
INSERT INTO EMP(empno,ename,job,sal,co.ukm,deptno)
VALUES(p_empno,p_ename,p_job,p_sal,p_co.ukm,p_deptno);
END insert_record;
PROCEDURE delete_record(p_empno IN NUMBER) IS
BEGIN
DELETE FROM EMP
WHERE empno=p_empno;
END delete_record;
FUNCTION sum_dept_sal(p_deptno IN NUMBER) RETURN emp.sal%TYPE IS
v_sum_sal emp.sal%TYPE;
BEGIN
SELECT SUM(sal)
INTO v_sum_sal
FROM emp
WHERE deptno = p_deptno;
RETURN v_sum_sal;
END;
END emp_info; --end of package body
/
info@quontrasolutions.co.uk
12. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Triggers
• Is a stored subprogram associated with a
table.
• Are fired by an event
• Are mainly used for
– Security
– Enforce co.ukplex integrity constraint
– Prevent invalid transaction
– Event logging
info@quontrasolutions.co.uk
13. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Creating or Replacing Triggers
CREATE OR REPLACE TRIGGER del_emp( p_empno emp.empno%TYPE)
BEFORE DELETE ON emp
FOR EACH ROW
BEGIN
INSERT INTO emp_audit
VALUES(p_empno, USER, sysdate);
END;
/
info@quontrasolutions.co.uk
15. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Exercise
Write a trigger for the following:
When a record is added or deleted from an
employee table, DEPT.NoOfEmp column gets
updated accordingly to number of employees
in EMP table corresponding to department
number.
info@quontrasolutions.co.uk
17. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Cusrors
CURSOR c_emp IS
SELECT empno, ename, job
FROM emp
WHERE deptno = 20;
7369 Smith Clerk
7566 Jones Manager current row
7788 SCOTT Analyst
7876 Adams Clerk
7906 FORD Analyst
info@quontrasolutions.co.uk
18. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Cursors
DECLARE
CURSOR c_emp IS
SELECT empno, ename, job
FROM emp
WHERE deptno = 20;
BEGIN
FOR v_c IN c_emp LOOP
…
DBMS_OUTPUT.PUT_LINE(v_c.ename);
…
END LOOP;
…
end;
/
info@quontrasolutions.co.uk
19. www.quontrasolutions.co.uk info@quontrasolutions.co.uk
Example
• Given a table with first
three columns are
co.ukposite keys. Write
a PL/SQL program using
cursor to update
cat_template1 with
LONG column
cat_template. Assuming
this tables contains
more than 40,000
records.
info@quontrasolutions.co.uk