Oracle Rules Manager 和 Oracle Expression Filter 组件 说明

2024-04-04 02:08

本文主要是介绍Oracle Rules Manager 和 Oracle Expression Filter 组件 说明,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!

 

一.Rules Manager 和 Expression Filter 组件说明

 

在说明之前,我们先用如下SQL查看一下DB中的组件:

SQL> col comp_id for a15

SQL> col version for a15

SQL> col comp_name for a30

SQL> select comp_id,comp_name,versionfrom dba_registry ;

 

COMP_ID         COMP_NAME                      VERSION

--------------------------------------------- ---------------

XDB             Oracle XML Database            11.2.0.3.0

AMD             OLAP Catalog                   11.2.0.3.0

EM              Oracle Enterprise Manager      11.2.0.3.0

SDO             Spatial                        11.2.0.3.0

ORDIM           Oracle Multimedia              11.2.0.3.0

CONTEXT         Oracle Text                    11.2.0.3.0

ODM             Oracle Data Mining             11.2.0.3.0

EXF             Oracle Expression Filter       11.2.0.3.0

RUL             Oracle Rules Manager           11.2.0.3.0

OWM             Oracle Workspace Manager       11.2.0.3.0

CATALOG         Oracle Database Catalog Views  11.2.0.3.0

 

COMP_ID         COMP_NAME                      VERSION

--------------------------------------------- ---------------

CATPROC         Oracle Database Packages and T11.2.0.3.0

                ypes

 

JAVAVM          JServer JAVA Virtual Machine   11.2.0.3.0

XML             Oracle XDK                     11.2.0.3.0

CATJAVA         Oracle Database Java Packages  11.2.0.3.0

XOQ             Oracle OLAP API                11.2.0.3.0

APS             OLAP Analytic Workspace        11.2.0.3.0

 

17 rows selected.

 

MOS:

Oracle 8i/9i/10g/11g 组件(Components) 说明

http://www.cndba.cn/Dave/article/1445

 

The 10i newfeature allows you to store conditional expressions as data in the database.The Expression Filter provides a mechanism that you use to place a constrainton a VARCHAR2 column to ensure that the values stored are valid SQL WHEREclause expressions. The mechanism also identifies the set of attributes thatcan be referenced in the conditional expressions. 

--Oracle 10g的一个新特性就是允许我们在数据库中用data的方式存储条件表达式。 Expression Filter 组件提供了机制,通过这个机制,我们可以在Varchar2类型的列上添加约束,来确保存储有效的SQL Where 条件表达式。这个机制也可以标记一个属性的集合,其可以用来在条件表达式中参考。

 

OracleExpression Filter, a feature of Oracle Database 10g, is a component of RulesManager that allows application developers to store, index, and evaluateconditional expressions (expressions) in one or more columns of a relationaltable. Expressions are a useful way to describe interests in expected data. 

--Expression Filter 是Rules Manager 的一个组件。其允许研发人员store,index 和 evaluate 条件表达式在相关表的一个或多个列上。

 

ExpressionFilter matches incoming data with expressions stored in a column to identifyrows of interest. It can also derive complex relationships by matching data inone table with expressions in a second table. Expression Filter simplifies SQLqueries; allows expressions to be inserted, updated, and deleted withoutchanging the application; and enables reuse of conditional expressions in rulesby separating them from the application and storing them in the database.Applications involving information distribution, demand analysis, and taskassignment can benefit from Expression Filter. 

--Expression Filter 使用存在列里的表达式来匹配输入的数据。 ExpressionFilter 简化了SQL 查询,允许表达式进行insert,update和delete 操作而不用改变应用程序。

 

The RulesManager and Expression Filter features are the same in the Standard andEnterprise Editions. Support for indexing expressions is available only in theEnterprise Edition because it requires bitmap index support. 

 

组件用户:

EXFSYS: 

Each is suppliedas a set of PL/SQL packages, a Java package, a set of dictionary tables, andcatalog views. All these objects are created in a dedicated schema namedEXFSYS. 

 

官网说明:

OracleExpression Filter Concepts 10gR2

 

 

二.组件重建

MOS:

Note 258618.1 - How To Install andUninstall Expression Filter Feature or EXFSYS schema

 

官网:

Installing Rules Managerand Expression Filter 11gR2

http://docs.oracle.com/cd/E11882_01/appdev.112/e14919/exprn_app_e.htm

 

 

2.1 Installing the EXFSYS schema: 

 

1. Login as SYSDBA 

2. @?/rdbms/admin/catexf.sql 

注意:

1. Installing Expression Filter does notautomatically install Rules Manager. 
    This component has to be installed separately using thecatrul.sql script

--安装Expression Filter 不会自动安装Rules Manager。所有RulesManager 需要使用catrul.sql 独立安装。


2. When reinstalling Expression Filter, you may have to run utlrp.sql torecompile some invalid objects.

       --在卸载Expression Filter 时,需要使用urlrp.sql 来编译一些无效对象。

 

During installation of OracleDatabase, a demonstration script is installed for both the Rules Manager and Expression Filter features. The scripts ruldemo.sql (Rules Manager demo) andexfdemo.sql (Expression Filter demo) are located in the$ORACLE_HOME/rdbms/demo/ directory. 

 

 

2.2 Uninstalling the EXFSYS schema: 


1. Login as SYSDBA 

2. @?/rdbms/admin/catnoexf.sql 

注意:

1. Uninstalling Expression Filter implicitly uninstalls Rules Manager.

       --卸载Expression Filter 组件时会自动卸载Rules Manager 组件。

 

2. The CATNOEXF.SQL script may not droppublic synonyms created by catexf.sql.
    However, with 11.2, it was verified no PUBLIC SYNONYMS fortable_owner = 'EXFSYS' were left.

       --catnoexf.sql 脚本不会删除由catexf.sql 产生的公共同义词。但是从Oracle 11gR2 开始,它会验证是否有public sysnonyms的存在。

 

The followingscript can be used to drop all PUBLIC SYNONYMS created for Rules Manager andExpression Filter when needed:

       --如下脚本可以删除所有EXFSYS 用户的PUBLIC SYNONYMS:

 

declare 
  cursor cur1 is select synonym_name from all_synonyms where owner ='PUBLIC' and table_owner = 'EXFSYS'; 
begin 
  for c1 in cur1 loop 
    EXECUTE IMMEDIATE 'drop public synonym ' ||dbms_assert.enquote_name(c1.synonym_name, false); 
  end loop; 
end; 
/

 

In someversions before 10.2, or if you do not have the dbms_assert package, thefollowing script can be used instead: 

--在Oracle 10gR2 之前,如果没有dbms_assert 包,那么可以使用如下的脚本来删除PUBLIC SYNONYMS:

 

declare
  cursor cur1 is select synonym_name from all_synonyms where owner ='PUBLIC' and table_owner = 'EXFSYS';
begin
  for c1 in cur1 loop
    EXECUTE IMMEDIATE 'drop public synonym"'||c1.synonym_name||'"';
  end loop;
end;

 

Thefollowing is a list of the public synonyms that may remain after justrunning CATNOEXF.SQL and these would be dropped by running one of the abovescripts:

--catanoexf.sql 不能删除的public synonyms列表如下:

EXF$INDEXOPER 
EXF$ATTRIBUTE 
EXF$ATTRIBUTE_LIST 
EXF$TABLE_ALIAS 
EXF$XPATH_TAG 
EXF$XPATH_TAGS 
EVALUATE 
DBMS_EXPFIL 
USER_EXPFIL_ATTRIBUTE_SETS 
ALL_EXPFIL_ATTRIBUTE_SETS 
USER_EXPFIL_ATTRIBUTES 
ALL_EXPFIL_ATTRIBUTES 
USER_EXPFIL_DEF_INDEX_PARAMS 
ALL_EXPFIL_DEF_INDEX_PARAMS 
USER_EXPFIL_INDEX_PARAMS 
ALL_EXPFIL_INDEX_PARAMS 
USER_EXPFIL_ASET_FUNCTIONS 
ALL_EXPFIL_ASET_FUNCTIONS 
USER_EXPFIL_INDEXES 
ALL_EXPFIL_INDEXES 
USER_EXPFIL_PREDTAB_ATTRIBUTES 
ALL_EXPFIL_PREDTAB_ATTRIBUTES 
USER_EXPFIL_EXPRESSION_SETS 
ALL_EXPFIL_EXPRESSION_SETS 
USER_EXPFIL_PRIVILEGES 
USER_EXPFIL_EXPRSET_STATS
ALL_EXPFIL_EXPRSET_STATS
RLM$EVENTIDS 
RLM$TABLE_ALIAS 
DBMS_RLMGR 
USER_RLMGR_EVENT_STRUCTS 
ALL_RLMGR_EVENT_STRUCTS 
USER_RLMGR_RULE_CLASSES 
ALL_RLMGR_RULE_CLASSES 
USER_RLMGR_RULE_CLASS_STATUS 
ALL_RLMGR_RULE_CLASS_STATUS 
USER_RLMGR_PRIVILEGES 
ADM_RLMGR_PRIVILEGES 
USER_RLMGR_COMPRCLS_PROPERTIES 
ALL_RLMGR_COMPRCLS_PROPERTIES 
USER_RLM4J_EVENT_STRUCTS
USER_RLM4J_RULE_CLASSES

 

 

 

 

 

 

-------------------------------------------------------------------------------------------------------

版权所有,文章允许转载,但必须以链接方式注明源地址,否则追究法律责任!

QQ:492913789

Email:ahdba@qq.com

Blog:  http://www.cndba.cn/dave

Weibo: http://weibo.com/tianlesoftware

Twitter: http://twitter.com/tianlesoftware

Facebook: http://www.facebook.com/tianlesoftware

Linkedin: http://cn.linkedin.com/in/tianlesoftware

 

 

-------加群需要在备注说明Oracle表空间和数据文件的关系,否则拒绝申请----

DBA1 群:62697716(满);   DBA2 群:62697977(满)  DBA3 群:62697850(满)  

DBA 超级群:63306533(满);  DBA4 群:83829929   DBA5群: 142216823

DBA6 群:158654907    DBA7 群:172855474   DBA总群:104207940

这篇关于Oracle Rules Manager 和 Oracle Expression Filter 组件 说明的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!



http://www.chinasem.cn/article/874548

相关文章

java脚本使用不同版本jdk的说明介绍

《java脚本使用不同版本jdk的说明介绍》本文介绍了在Java中执行JavaScript脚本的几种方式,包括使用ScriptEngine、Nashorn和GraalVM,ScriptEngine适用... 目录Java脚本使用不同版本jdk的说明1.使用ScriptEngine执行javascript2.

Oracle数据库使用 listagg去重删除重复数据的方法汇总

《Oracle数据库使用listagg去重删除重复数据的方法汇总》文章介绍了在Oracle数据库中使用LISTAGG和XMLAGG函数进行字符串聚合并去重的方法,包括去重聚合、使用XML解析和CLO... 目录案例表第一种:使用wm_concat() + distinct去重聚合第二种:使用listagg,

vue解决子组件样式覆盖问题scoped deep

《vue解决子组件样式覆盖问题scopeddeep》文章主要介绍了在Vue项目中处理全局样式和局部样式的方法,包括使用scoped属性和深度选择器(/deep/)来覆盖子组件的样式,作者建议所有组件... 目录前言scoped分析deep分析使用总结所有组件必须加scoped父组件覆盖子组件使用deep前言

基于Qt Qml实现时间轴组件

《基于QtQml实现时间轴组件》时间轴组件是现代用户界面中常见的元素,用于按时间顺序展示事件,本文主要为大家详细介绍了如何使用Qml实现一个简单的时间轴组件,需要的可以参考下... 目录写在前面效果图组件概述实现细节1. 组件结构2. 属性定义3. 数据模型4. 事件项的添加和排序5. 事件项的渲染如何使用

oracle中exists和not exists用法举例详解

《oracle中exists和notexists用法举例详解》:本文主要介绍oracle中exists和notexists用法的相关资料,EXISTS用于检测子查询是否返回任何行,而NOTE... 目录基本概念:举例语法pub_name总结 exists (sql 返回结果集为真)not exists (s

Oracle的to_date()函数详解

《Oracle的to_date()函数详解》Oracle的to_date()函数用于日期格式转换,需要注意Oracle中不区分大小写的MM和mm格式代码,应使用mi代替分钟,此外,Oracle还支持毫... 目录oracle的to_date()函数一.在使用Oracle的to_date函数来做日期转换二.日

oracle数据库索引失效的问题及解决

《oracle数据库索引失效的问题及解决》本文总结了在Oracle数据库中索引失效的一些常见场景,包括使用isnull、isnotnull、!=、、、函数处理、like前置%查询以及范围索引和等值索引... 目录oracle数据库索引失效问题场景环境索引失效情况及验证结论一结论二结论三结论四结论五总结ora

Oracle Expdp按条件导出指定表数据的方法实例

《OracleExpdp按条件导出指定表数据的方法实例》:本文主要介绍Oracle的expdp数据泵方式导出特定机构和时间范围的数据,并通过parfile文件进行条件限制和配置,文中通过代码介绍... 目录1.场景描述 2.方案分析3.实验验证 3.1 parfile文件3.2 expdp命令导出4.总结

Redis分布式锁使用及说明

《Redis分布式锁使用及说明》本文总结了Redis和Zookeeper在高可用性和高一致性场景下的应用,并详细介绍了Redis的分布式锁实现方式,包括使用Lua脚本和续期机制,最后,提到了RedLo... 目录Redis分布式锁加锁方式怎么会解错锁?举个小案例吧解锁方式续期总结Redis分布式锁如果追求

结构体和联合体的区别及说明

《结构体和联合体的区别及说明》文章主要介绍了C语言中的结构体和联合体,结构体是一种自定义的复合数据类型,可以包含多个成员,每个成员可以是不同的数据类型,联合体是一种特殊的数据结构,可以在内存中共享同一... 目录结构体和联合体的区别1. 结构体(Struct)2. 联合体(Union)3. 联合体与结构体的