SAP on Oracle系统-创建SE14索引-是否可以在其中合并PARALLEL子句?

2020-08-16 05:16发布

点击此处---> 群内免费提供SAP练习系统(在群公告中)加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)我们在11204 oracle上...

         点击此处--->   EasySAP.com群内免费提供SAP练习系统(在群公告中)

加入QQ群:457200227(SAP S4 HANA技术交流) 群内免费提供SAP练习系统(在群公告中)


我们在11204 oracle上有一个ERP6系统。 具有500gb的索引不一致(SE14 DB UTILITY CHECK OBJECT检查显示SAP级别上的字段名称符合预期,但与DB上的字段名称不匹配-这些都是SYS_NC000 $,其中xx = 一些数字……在数据库级别,相同的索引也在DBA_IND_COLUMNS视图中显示字段名称的那些SYS_NC *值。

我删除了SE14中的索引,并使用PARALLEL 16在DB LEVEL(带有正确的字段名称)处重新创建,以加快速度……。但是在完成8小时后,DBA_IND_COLUMNS中的字段名称 仍然显示为SYS_NC * ........

我修复了另一个类似但更小的文件-在这种情况下,我使用了SE14-ACTIVATE AND ADJUST DATABASE选项(它会触发不具有并行性的CREATE INDEX)。

问题:

1)有人以前看过SYS_NC *东西并且有任何指导吗?

2)是否可以使用SE14 .... STORAGE ..... FOR NEW CREATION选项中的PARALLEL子句? 我尝试按照note#1907408 ....该注释列出了关键字Parallel ......但没有涉及任何细节或实际上没有显示如何使用PARALLEL。 我已经尝试过,但找不到解决方法。

1条回答
Climb_Ma
2020-08-16 05:55

嗨,本

SE14不支持类似PARALLEL的功能。

如果您创建基于函数的索引,Oracle将创建SYS_NC *列。 这里简短的例子。

 SQL> COLUMN COLUMN_NAME格式a15
 SQL> COLUMN DATA_DEFAULT格式a20
 SQL> COLUMN INDEX_NAME格式a20
 SQL> COLUMN TABLE_NAME格式为a15 
 SQL>创建表ZZZ_INDEX_TEST
   2(C1 VARCHAR2(20)
   3,C2 VARCHAR2(20)
   4);
 
 SQL>在ZZZ_INDEX_TEST上创建索引" ZZZ_INDEX_TEST〜001"(C1 ASC,C2 ASC); 

第二个索引创建为SUBSTR(" C1",0,10)

 SQL>在ZZZ_INDEX_TEST上创建索引" ZZZ_INDEX_TEST〜002"(SUBSTR(" C1",0,10)ASC); 
 SQL>选择column_name,virtual_column,hidden_​​column,data_default
   2来自user_tab_cols
   3其中table_name ='ZZZ_INDEX_TEST';

 COLUMN_NAME VIR HID DATA_DEFAULT
 --------------- --- --- -----------------------------  --
 C1否否'
 C2否否'
 SYS_NC00003 $是是SUBSTR(" C1",0,10)
 SQL>选择INDEX_NAME,TABLE_NAME,COLUMN_NAME
   来自user_ind_columns的2
   3其中table_name ='ZZZ_INDEX_TEST';

 INDEX_NAME TABLE_NAME COLUMN_NAME
 -------------------- --------------- ---------------
 ZZZ_INDEX_TEST〜001 ZZZ_INDEX_TEST C1
 ZZZ_INDEX_TEST〜001 ZZZ_INDEX_TEST C2
 ZZZ_INDEX_TEST〜002 ZZZ_INDEX_TEST SYS_NC00003 $



 

致谢

罗伯特

一周热门 更多>