問題詳情

QUESTION 8Examine this code:CREATE OR REPLACE FUNCTION gen_email_name(p_first_name VARCHAR2, p_last_name VARCHAR2, p_id NUMBER) RETURN VARCHAR2isv_email_name VARCHAR2(19);BEGINv_email_home := SUBSTR(p_first_name, 1, 1) ||SUBSTR(p_last_name, 1, 7) ||'@Oracle.com';UPDATE employeesSET email = v_email_nameWHERE employee_id = p_id;RETURN v_email_name;END;You run this SELECT statement:SELECT first_name, last_namegen_email_name(first_name, last_name, 108) EMAILFROM employees;What occurs?
(A)Employee 108 has his email name updated based on the return result of the function.
(B)The statement fails because functions called from SQL expressions cannot perform DML.
(C)The statement fails because the functions does not contain code to end the transaction.
(D)The SQL statement executes successfully, because UPDATE and DELETE statements are ignoring in stored functions called from SQL expressions.
(E)The SQL statement executes successfully and control is passed to the calling environment.

參考答案

答案:B
難度:非常困難0
統計:A(0),B(0),C(1),D(0),E(0)