首页 > 解决方案 > 可以使用 NLS_date 格式从不同会话中获得相同的结果吗?

问题描述

create function inv_date return varchar2
result_cache authid definer is
demo_date varchar2(50);
begin
l_date := sysdate;
return l_date;
end;

此功能的用户可以在他们的会话中设置不同的日期格式。在输出此函数的缓存结果时,必须进行哪两项修改以允许使用您的会话日期格式?

A. 将 RETURN 类型更改为 DATE。
B. 将 AUTHID 更改为 CURRENT_USER。
C. 使用 SYSDATE 前后的 TO_CHAR 函数,即 1_date := TO_CHAR (SYSDATE)。
D. 将 1_date 的数据类型改为 DATE。
E. 在实例级别将 NLS_DATE_FORMAT 设置为“DD-MM-YY”。
F. 将 RESULT_CACHE_MODE 参数设置为 FORCE。

标签: plsql

解决方案


CE - 根据我指定标准 NLS_Date_formate 并在 sysdate 上调用 to_char 应该可以解决问题。

AD - 但是在搜索时,我看到多个站点都在说更改 l_date 的返回类型和数据类型是解决方案。


推荐阅读