oracle apex中的v()和nv()函数有什么区别?
我碰到了nv()函数,我唯一能让Google吐出的东西就是nvl()函数。
apex_custom_auth.post_login(
p_uname => l_authenticated_username,
p_session_id => nv('APP_SESSION'),
p_app_page =>
apex_application.g_flow_id||':'||nvl(apex_application.g_flow_step_id,0));
答案 0 :(得分:3)
nv
返回数字而不是字符串(因此很显然,它仅适用于数字属性)。如果使用v
返回数字值,有时可能会遇到与数据类型转换有关的性能问题。
答案 1 :(得分:2)
是
GET_NUMERIC_SESSION_STATE函数
此函数返回数字项目的数字值。您可以使用 无论您在哪里,Oracle Application Express应用程序中的此功能 可以使用PL / SQL或SQL。您还可以在 APEX_UTIL.GET_NUMERIC_SESSION_STATE的位置。
有关更多信息,请参见Oracle Application Express APIs。
答案 2 :(得分:0)
而不是调用 APEX_APPLICATION.G_USER(它显示当前登录的用户) 你可以很容易地调用 v('APP_USER') 所以据我说,它就像一个评估器函数,可以让你轻松获取 Apex 全局变量的值。 所以这些是等价的。
v('APP_SESSION')
APEX_APPLICATION.get_session_id
Check Oracle APEX global variables
NV('APP_CURRENT_LOGGED_USERS_HIGH)
处理数值,(以 APEX 中用户定义的全局变量为例)