Searching for "i"

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:

Difference between %TYPE and %ROWTYPE.

Answer

%type is used to declare a field of a table while %rowtype is used to declare a record with the same type as specified in that table, view or cursor.


Example of %type:


DECLARE


         v_EmployeeName emp.ename%TYPE


 


Example of %rowtype


DECLARE


          v_empployee emp%ROWTYPE;

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

Q:

How can we read and write operating system files from PL/SQL program?

Answer

The UTL_FILE database package can be used to read and write operating system files. You need to have read /write access rights in that directory before the package can be used.


Example to write file:


Fhandler is a variable of type UTL_FILE.FILE_TYPE


UTL_FILE.PUTF(fHandler, 'Im writing to a file\n');


 


Example to read file:


UTL_FILE.GET_LINE(fHandler, buf);

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

Explain how to debug PL/SQL program.

Answer

One can debug PL/SQL program by printing the output using DBMS_OUTPUT package. Put_line can be used to display a line as shown below:


BEGIN


        dbms_output.put_line(‘Sample line');


END;

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle

Q:

Both PL/SQL and Java (or) .NET code can be used to create Oracle stored procedures and triggers. Which of the one should be used and why?

Answer

Even though both PL/SQL and Java (or) .NET can be used, PL/SQL stands above these two in terms of integration overhead. This is because Java is an open source proprietary and Data manipulation is slightly faster in PL/SQL than in Java. 

Report Error

View answer Workspace Report Error Discuss

Subject: Oracle