哪些字段唯一标识 Oracle BRM Account_Nameinfo_T表中的行?



我正在尝试确定一组唯一标识Account_Nameinfo_T行的字段。 Oracle BRM 不使用约束,因此我无法以这种方式确定它。有谁知道这些领域?更好的是,有谁知道我如何为 BRM 中的其他表确定这一点?

(显然SO中没有Oracle-Brm标签(。

只是为了在切尔尼科夫@Pavel提供的(好(答案中添加更多信息。

通常,BRM 将类的定义存储在 3 个数据字典表(即 DD_OBJECTS_TDD_FIELDS_TDD_OBJECTS_FIELDS_T 表中,但您应该使用开发人员中心的类浏览器来获得方便的图形视图。

此外,BRM 文档(在 BRM 文档 - 参考 - 数据库参考 - 可存储类定义下(包含有关类定义的大量信息。

例如,我们可以看一下/account类:

  • 在 SQL 映射部分,我们可以看到它映射到表ACCOUNT_T
  • 它有一个映射到表PIN_FLD_NAMEINFO的数组ACCOUNT_NAMEINFO_T
  • 因此,ACCOUNT_NAMEINFO_T中的记录将由这对夫妇唯一标识
    1. OBJ_ID0 ,可以将其视为 ACCOUNT_T 中相应记录的POID_ID0 (*( 的外键
    2. REC_ID ,称为元素 ID,用于区分ACCOUNT_NAMEINFO_T中同一记录的可能多个记录ACCOUNT_T
  • 文档还提示了元素ID的功能含义

    数组PIN_FLD_NAMEINFO:帐户的联系信息。此数组包含任意数量的联系人,并带有联系人类型的说明。元素 ID 除了帐单联系人 (1( 和邮寄联系人 (2( 之外并不重要。元素 id 的 3-100 是保留的。

  • 例如,数组PIN_FLD_PHONES,在同一个数组PIN_FLD_NAMEINFO中,映射到表ACCOUNT_PHONES_T,其中记录将由三元组唯一标识(OBJ_ID0REC_IDREC_ID2(。REC_ID2

(*( 请注意,一般来说,POID 由 4 个元素组成:

  1. 身份证 ( POID_ID0 (
  2. A 类型 ( POID_TYPE (
  3. 数据库编号 ( POID_DB (
  4. 修订号 ( POID_REV (

但是,对于单数据库安装以及为了讨论,我们可以假设 ID 足以唯一标识给定表中的记录。

OBJ_ID0 REC_ID的组合是唯一标识表中ACCOUNT_NAMEINFO_T行的。

REC_ID在此表的情况下通常是 1 或 2(我相信 1 是计费,2 是服务(。

Oracle BRM 中的主表(如 ACCOUNT_T、EVENT_T、CONFIG_T(由 POID_ID0 唯一标识。

所有子表都由OBJ_ID0(当表映射到PIN_FLD_SUBSTRUCT时(或OBJ_ID0和REC_ID的组合(当表映射到PIN_FLD_ARRAY时(唯一标识。

最新更新