代码之家  ›  专栏  ›  技术社区  ›  Vimal Bhaskar

存储过程将选择哪种NLS_DATE_格式

  •  0
  • Vimal Bhaskar  · 技术社区  · 6 年前

    有一点疑问。我的数据库中有一个存储过程。数据库和会话的NLS_date_格式如下。

    select * from nls_session_parameters : 
    =========================
     DD-MON-YYYY
    
    select * from nls_database_parameters: 
    =============
    DD-MON-RR
    

    所以我怀疑,当调用PLSQL过程时,会选择哪种NLS_DATE_格式?是否基于当前会话日期格式或数据库指定的格式。

    谢谢你花时间让我理解这个话题

    1 回复  |  直到 6 年前
        1
  •  3
  •   Lukasz Szozda    6 年前

    会话参数将优先。从 NLS

    请注意,会话参数优先于实例和数据库参数。

    Table 3-1 Methods of Setting NLS Parameters and Their Priorities

    +-------------+------------------------------------------------+
    |  Priority   |                     Method                     |
    +-------------+------------------------------------------------+
    | 1 (highest) | Explicitly set in SQL functions                |
    | 2           | Set by an ALTER SESSION statement              |
    | 3           | Set as an environment variable                 |
    | 4           | Specified in the initialization parameter file |
    +-------------+------------------------------------------------+