#plsql
#plsql
Вопрос:
create function inv_date return varchar2
result_cache authid definer is
demo_date varchar2(50);
begin
l_date := sysdate;
return l_date;
end;
Пользователи этой функции могут устанавливать разные форматы дат в своих сеансах. Какие две модификации необходимо внести, чтобы разрешить использование формата даты ваших сеансов при выводе кэшированного результата этой функции?
A. Измените тип ВОЗВРАЩАЕМОГО значения на DATE.
B. Измените AUTHID на CURRENT_USER.
C. Используйте функцию TO_CHAR для SYSDATE, то есть 1_date := TO_CHAR (SYSDATE).
D. Измените тип данных 1_date на DATE.
E. Установите для NLS_DATE_FORMAT значение ‘DD-MM-YY’ на уровне экземпляра.
F. Установите для параметра RESULT_CACHE_MODE значение FORCE .
Комментарии:
1. Я предполагаю, что это вопрос экзамена или собеседования, с которым у вас возникли трудности. Поскольку он маленький, я предлагаю вам на самом деле написать процедуру. Затем внесите каждое изменение и запустите его, посмотрите, каковы результаты. Если при этом вы не понимаете результат или не можете разобраться, тогда отправьте конкретный вопрос.
Ответ №1:
CE — По моему мнению, указание стандартного NLS_Date_formate и вызов to_char в sysdate должны решить проблему.
AD — Но во время поиска я увидел, что несколько сайтов говорят, что изменение типа возвращаемого значения и типа данных l_date является решением.