Searching for "h"

Q:

What is a PL/SQL package? what are its Advantages ?

Answer

A package is a collection of related PL/SQL objects. The package contains a body and a specification. The package specification has the declaration which is public and can be used in the PL/SQL sub programs inside the package.


The package body holds the implementation of all the PL/SQL objects declared in the specification.


Example of a PL/SQL Package.


CREATE OR REPLACE PACKAGE emp_data AS 


PROCEDURE add_employee (


      ename VARCHAR2,


      job VARCHAR2,


      mgr NUMBER,


      sal NUMBER,


      deptno NUMBER);


END emp_actions;


 


CREATE OR REPLACE PACKAGE BODY emp_data AS 


PROCEDURE add_employee (


       ename VARCHAR2,


       job VARCHAR2,


       mgr NUMBER,


       sal NUMBER,


       deptno NUMBER) IS


BEGIN


         INSERT INTO emp VALUES (empno_seq.NEXTVAL, ename, job, mgr, SYSDATE, comm, deptno);


END add_employee;


END emp_data;


Advantages of  PL/SQL packages :


Packages are easier for application designing, encapsulating data, additional functionality and better performance. An application has various modules which can be placed in packages and handled easier.


 

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

What are PL/SQL Subprograms? What are its Advantages ?

Answer

Named PL/SQL blocks of code which can be invoked using parameters are called PL/SQL sub programs.


 


Advantages of PL/SQL subprograms are


- The application makes a single call to the database to run a block of statements which improves performance against running SQL multiple times. This will reduce the number of calls between the database and the application.


- PL/SQL is secure since the code resides inside the database thus hiding internal database details from the application. The application will only make a call to the PL/SQL sub program


- PL/SQL and SQL go hand in hand so there would be no need of any translation required between PL/SQL and SQL.

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

Explain how PL/SQL exceptions are raised.

Answer

PL/SQL exceptions are raised using the RAISE command. This command is used when exceptions are defined by programmer and not implicit exceptions.


 


Example:


Declare and raising an exception:


DECLARE


short_of_attendance EXCEPTION;


min_attendance NUMBER(4);


BEGIN


...


IF min_attendance < 10 THEN


RAISE short_of_attendance;


END IF;


EXCEPTION


WHEN short_of_attendance THEN


-- handle the error


END;

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

Explain some of the commonly used Predefined PL/SQL Exceptions.

Answer

1)Divide by zero        – This is raised when any number is attempted to divide by zero.


2)TOO MANY ROWS   - A SELECT INTO statement returns more than one row.


3)CASE_NOT_FOUND - No choice in the WHEN clause of a case statement is selected.


4)LOGIN_DENIED      - An attempt to login with an invalid username or password.


5)PROGRAM_ERROR  - An internal PL/SQL problem.

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

What are Cursors? Explain Types of cursors in PL/SQL

Answer

Cursors help you manipulate the information retrieved by select statements. This can be done by assigning a name to the cursor.


Example:


CURSOR emp_cur 


IS 


SELECT emp_number from employee_tbl where employee_name = name_in;


Types of Cursors:


Implicit cursors- These cursors are not declared by the programmer. They are issued when the SQL statement is executed. The open, close and fetching is done by itself.


Example:


UPDATE employee SET salary = salary * 2.1;


Here, an implicit cursor is issued to identify the set of rows in the table which would be affected by the update.


 


Explicit cursors- These cursors are defined by programmer. They are used in queries that return multiple rows.


Example:


CURSOR emp_cur 


IS 


SELECT emp_number from employee_tbl where employee_name = name_in;

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

What is a PL/SQL Record data type?

Answer

A record data type represents a data type for that row in a database table. It lets u define your own records and not your own fields.

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

What is a Collection? Explain collection types.

Answer

A collection just like an array is an ordered group of elements of the same type. Each elements position is determined by a unique subscript.


 


Index by tables:- They are similar to hash arrays that allows to search for subscript values using arbitrary numbers and strings.


They can be declared as:


TYPE type_name IS TABLE OF element_type [NOT NULL]


INDEX BY [BINARY_INTEGER | PLS_INTEGER | VARCHAR2(size_limit)];


INDEX BY key_type;


Example:


TYPE studenttyp IS TABLE OF emp%ROWTYPE


INDEX BY BINARY_INTEGER;


stud_tab studenttyp;


 


Nested tables:- they hold random number of elements and use sequential numbers as sub scripts.


They can be declared as:


TYPE type_name IS TABLE OF element_type [NOT NULL];


Example: TYPE employee_type IS TABLE OF NUMBER INDEX BY VARCHAR2(64);


 


Varrays: Holds a fixed number of elements which can be changed in run time. 


They can be declared as:


TYPE type_name IS {VARRAY | VARYING ARRAY} (size_limit) OF element_type [NOT NULL];


Example: TYPE Calendar IS VARRAY(366) OF DATE;

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

How can we call DDL statements like CREATE, DROP, TRUNCATE, etc. from PL/SQL?

Answer

EXECUTE IMMEDIATE command can be used to call DDL statements. 


Example:


BEGIN


EXECUTE IMMEDIATE  'TRUNCATE TABLE employee';


END;

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle