Oracle应用程序-如何获取zd_edition_名称的值

Oracle应用程序-如何获取zd_edition_名称的值,oracle,oracle-apps,Oracle,Oracle Apps,在Oracle Applications 12c release 1中,有一个新列构成了许多主键的一部分,称为zd\u edition\u name。这与您可以在更改期间保持数据库正常运行的版本有关。因此,您将有两个版本,您可以对非live on进行更改,然后在完成后进行live swap(我的理解有限,我不是dba) 我的问题是如何获得zd\u edition\u name的值,,因为这现在是主键的一部分,而且如果不传递zd\u edition\u name的值,像fnd\u descr\u

在Oracle Applications 12c release 1中,有一个新列构成了许多主键的一部分,称为
zd\u edition\u name
。这与您可以在更改期间保持数据库正常运行的版本有关。因此,您将有两个版本,您可以对非live on进行更改,然后在完成后进行live swap(我的理解有限,我不是dba)

我的问题是如何获得
zd\u edition\u name的值,
,因为这现在是主键的一部分,而且如果不传递
zd\u edition\u name的值,像
fnd\u descr\u flex\u col\u usage\u tl
这样的表将返回两行而不是一行


zd代表什么?EBS和版本库重新定义和在线修补

正如您所指出的,zd_edition_name列只是Oracle 11G 2(或更高版本)数据库基于版本的重新定义功能的一个组件

Oracle应用程序在12.2 EBS之前不会利用此基于版本的重新定义数据库功能

apps owned同义词将显示运行时值SET1或SET2。它将是一个值。对于EBS 12.1,我希望运行时值设置为1。

APPS@db>    select
  2      zd_edition_name
  3      from
  4      fnd_descr_flex_col_usage_tl
  5      group by   zd_edition_name;
ZD_EDITION_NAME
SET1
对于可编辑视图和表,我们没有该限制:

APPS@db>SELECT
  2      zd_edition_name
  3  FROM
  4      applsys.fnd_descr_flex_col_usage_tl
  5  GROUP BY
  6      zd_edition_name;
ZD_EDITION_NAME
SET2
SET1
在EBS 12.2中,可以通过登录到Oracle Apps服务器并回显环境变量来识别应与SET1/SET2通信的活动文件系统:

$FILE_EDITION = patch

$RUN_BASE = /u01/R122_EBS/fs1

$PATCH_BASE = /u01/R122_EBS/fs2
通过查询apps owned同义词,不必知道ZD\u EDITION\u NAME的值(它是一个与run EDITION关联的值,将作为该值)。


您可以通过以下查询查看与表关联的可编辑对象:

APPS@db>VAR b_object_name varchar2(30);
APPS@db>EXEC :b_object_name:= 'FND_DESCR_FLEX_COL_USAGE_TL';

PL/SQL procedure successfully completed.

APPS@db>SELECT
  2      ao.owner,
  3      ao.object_name,
  4      ao.object_type
  5  FROM
  6      all_objects ao
  7  WHERE
  8      1 = 1
  9      AND   owner IN (
 10          'APPS',
 11          'APPLSYS'
 12      )
 13      AND   ao.object_name IN (
 14          :b_object_name,
 15          substr(:b_object_name,1,29)
 16          || '#'
 17      );
OWNER     OBJECT_NAME                    OBJECT_TYPE   
APPLSYS   FND_DESCR_FLEX_COL_USAGE_TL    TABLE         
APPLSYS   FND_DESCR_FLEX_COL_USAGE_TL#   VIEW          
APPS      FND_DESCR_FLEX_COL_USAGE_TL    SYNONYM       

以下是EBS实例中存在的版本列表:

APPS@db>SELECT
  2      level,
  3      de.edition_name,
  4      de.parent_edition_name
  5  FROM
  6      dba_editions de
  7  START WITH
  8      de.edition_name = 'ORA$BASE'
  9  CONNECT BY
 10      PRIOR de.edition_name = de.parent_edition_name
 11  ORDER BY
 12      de.edition_name;
  LEVEL EDITION_NAME      PARENT_EDITION_NAME
      1 ORA$BASE
      2 V_20160703_2120   ORA$BASE
      3 V_20160708_1723   V_20160703_2120
    ...
     29 V_20180117_1118   V_20171206_1115
     30 V_20180130_0107   V_20180117_1118
对于12.1ebs环境,我希望起始版本ORA$BASE是唯一的版本