- Which of the following statements is true about implicit cursors?
- Implicit cursors are used for SQL statements that are not named.
- Developers should use implicit cursors with great care.
- Implicit cursors are used in cursor for loops to handle data processing.
- Implicit cursors are no longer a feature in Oracle.
- Which of the following is not a feature of a cursor FOR loop?
- Record type declaration.
- Opening and parsing of SQL statements.
- Fetches records from cursor.
- Requires exit condition to be defined.
- A developer would like to use referential datatype declaration on a variable. The variable name is EMPLOYEE_LASTNAME, and the corresponding table and column is EMPLOYEE, and LNAME, respectively. How would the developer define this variable using referential datatypes?
- Use employee.lname%type.
- Use employee.lname%rowtype.
- Look up datatype for EMPLOYEE column on LASTNAME table and use that.
- Declare it to be type LONG.
- Which three of the following are implicit cursor attributes?
- %found
- %too_many_rows
- %notfound
- %rowcount
- %rowtype
- If left out, which of the following would cause an infinite loop to occur in a simple loop?
- LOOP
- END LOOP
- IF-THEN
- EXIT
- Which line in the following statement will produce an error?
- cursor action_cursor is
- select name, rate, action
- into action_record
- from action_table;
- There are no errors in this statement.
- The command used to open a CURSOR FOR loop is
- open
- fetch
- parse
- None, cursor for loops handle cursor opening implicitly.
- What happens when rows are found using a FETCH statement
- It causes the cursor to close
- It causes the cursor to open
- It loads the current row values into variables
- It creates the variables to hold the current row values
- Read the following code:
CREATE OR REPLACE PROCEDURE find_cpt
(v_movie_id {Argument Mode} NUMBER, v_cost_per_ticket {argument mode} NUMBER)
IS
BEGIN
IF v_cost_per_ticket > 8.5 THEN
SELECT cost_per_ticket
INTO v_cost_per_ticket
FROM gross_receipt
WHERE movie_id = v_movie_id;
END IF;
END;
Which mode should be used for
V_COST_PER_TICKET?
- IN
- OUT
- RETURN
- IN OUT
- Read the following code:
CREATE OR REPLACE TRIGGER update_show_gross
{trigger information}
BEGIN
{additional code}
END;
The trigger code should only execute
when the column, COST_PER_TICKET, is greater than $3. Which trigger
information will you add?
- WHEN (new.cost_per_ticket > 3.75)
- WHEN (:new.cost_per_ticket > 3.75
- WHERE (new.cost_per_ticket > 3.75)
- WHERE (:new.cost_per_ticket > 3.75)
- What is the maximum number of handlers processed before the PL/SQL block is exited when an exception occurs?
- Only one
- All that apply
- All referenced
- None
- For which trigger timing can you reference the NEW and OLD qualifiers?
- Statement and Row
- Statement only
- Row only
- Oracle Forms trigger
- Read the following code:
CREATE OR REPLACE FUNCTION get_budget(v_studio_id IN NUMBER)
RETURN number IS
v_yearly_budget NUMBER;
BEGIN
SELECT yearly_budget
INTO v_yearly_budget
FROM studio
WHERE id = v_studio_id;
RETURN
v_yearly_budget;
END;
Which set of statements will
successfully invoke this function within SQL*Plus?
- VARIABLE g_yearly_budget NUMBER
EXECUTE g_yearly_budget := GET_BUDGET(11); - VARIABLE g_yearly_budget NUMBER
EXECUTE :g_yearly_budget := GET_BUDGET(11); - VARIABLE :g_yearly_budget NUMBER
EXECUTE :g_yearly_budget := GET_BUDGET(11); - VARIABLE g_yearly_budget NUMBER
:g_yearly_budget := GET_BUDGET(11);
14. CREATE OR REPLACE PROCEDURE update_theater
(v_name IN VARCHAR v_theater_id IN NUMBER) IS
BEGIN
UPDATE theater
SET name = v_name
WHERE id = v_theater_id;
END update_theater;
When invoking this procedure, you encounter the error:
ORA-000: Unique constraint(SCOTT.THEATER_NAME_UK) violated.
How should you modify the function to
handle this error?
- An user defined exception must be declared and associated with the error code and handled in the EXCEPTION section.
- Handle the error in EXCEPTION section by referencing the error code directly.
- Handle the error in the EXCEPTION section by referencing the UNIQUE_ERROR predefined exception.
- Check for success by checking the value of SQL%FOUND immediately after the UPDATE statement.
- Read the following code:
CREATE OR REPLACE PROCEDURE calculate_budget IS
v_budget studio.yearly_budget%TYPE;
BEGIN
v_budget := get_budget(11);
IF v_budget < 30000
THEN
set_budget(11,30000000);
END IF;
END;
You are about to add an argument to
CALCULATE_BUDGET. What effect will this have?
- The GET_BUDGET function will be marked invalid and must be recompiled before the next execution.
- The SET_BUDGET function will be marked invalid and must be recompiled before the next execution.
- Only the CALCULATE_BUDGET procedure needs to be recompiled.
- All three procedures are marked invalid and must be recompiled.
- Which procedure can be used to create a customized error message?
- RAISE_ERROR
- SQLERRM
- RAISE_APPLICATION_ERROR
- RAISE_SERVER_ERROR
- The CHECK_THEATER trigger of the THEATER table has been disabled. Which command can you issue to enable this trigger?
- ALTER TRIGGER check_theater ENABLE;
- ENABLE TRIGGER check_theater;
- ALTER TABLE check_theater ENABLE check_theater;
- ENABLE check_theater;
- Examine this database trigger
CREATE OR REPLACE TRIGGER prevent_gross_modification
{additional trigger information}
BEGIN
IF TO_CHAR(sysdate, DY) = MON
THEN
RAISE_APPLICATION_ERROR(-20000,Gross receipts cannot be deleted on Monday);
END IF;
END;
This trigger must fire before each
DELETE of the GROSS_RECEIPT table. It should fire only once for the entire
DELETE statement. What additional information must you add?
- BEFORE DELETE ON gross_receipt
- AFTER DELETE ON gross_receipt
- BEFORE (gross_receipt DELETE)
- FOR EACH ROW DELETED FROM gross_receipt
- Examine this function:
CREATE OR REPLACE FUNCTION set_budget
(v_studio_id IN NUMBER, v_new_budget IN NUMBER) IS
BEGIN
UPDATE studio
SET yearly_budget = v_new_budget
WHERE id = v_studio_id;
IF
SQL%FOUND THEN
RETURN TRUEl;
ELSE
RETURN FALSE;
END IF;
COMMIT;
END;
Which code must be added to
successfully compile this function?
- Add RETURN right before the IS keyword.
- Add RETURN number right before the IS keyword.
- Add RETURN boolean right after the IS keyword.
- Add RETURN boolean right before the IS keyword.
- Under which circumstance must you recompile the package body after recompiling the package specification?
- Altering the argument list of one of the package constructs
- Any change made to one of the package constructs
- Any SQL statement change made to one of the package constructs
- Removing a local variable from the DECLARE section of one of the package constructs
- Procedure and Functions are explicitly executed. This is different from a database trigger. When is a database trigger executed?
- When the transaction is committed
- During the data manipulation statement
- When an Oracle supplied package references the trigger
- During a data manipulation statement and when the transaction is committed
- Which Oracle supplied package can you use to output values and messages from database triggers, stored procedures and functions within SQL*Plus?
- DBMS_DISPLAY
- DBMS_OUTPUT
- DBMS_LIST
- DBMS_DESCRIBE
- What occurs if a procedure or function terminates with failure without being handled?
- Any DML statements issued by the construct are still pending and can be committed or rolled back.
- Any DML statements issued by the construct are committed
- Unless a GOTO statement is used to continue processing within the BEGIN section, the construct terminates.
- The construct rolls back any DML statements issued and returns the unhandled exception to the calling environment.
- Examine this code
BEGIN
theater_pck.v_total_seats_sold_overall := theater_pck.get_total_for_year;
END;
For this code to be successful, what
must be true?
- Both the V_TOTAL_SEATS_SOLD_OVERALL variable and the GET_TOTAL_FOR_YEAR function must exist only in the body of the THEATER_PCK package.
- Only the GET_TOTAL_FOR_YEAR variable must exist in the specification of the THEATER_PCK package.
- Only the V_TOTAL_SEATS_SOLD_OVERALL variable must exist in the specification of the THEATER_PCK package.
- Both the V_TOTAL_SEATS_SOLD_OVERALL variable and the GET_TOTAL_FOR_YEAR function must exist in the specification of the THEATER_PCK package.
- A stored function must return a value based on conditions that are determined at runtime. Therefore, the SELECT statement cannot be hard-coded and must be created dynamically when the function is executed. Which Oracle supplied package will enable this feature?
- DBMS_DDL
- DBMS_DML
- DBMS_SYN
- DBMS_SQL
This comment has been removed by a blog administrator.
ReplyDelete