Crodys 使用Oracle同义词解决方案

以展现流程业务信息列表为例,介绍使用Oracle同义词解决方案。

在Oracle数据库BPM_SUN用户中有如下对象:

对象名称 类型 说明
sun_biz_base table
sub_focusprocess table
sub_biz_info synonym create synonym SUN_BIZ_INFO for BPM_MANAGER.BIZ_INFO;

查询列表SQL语句如下所示:

select a.title,to_char(a.live_date,‘yyyy-mm-dd‘),b.endflow
from sun_biz_info a,sun_biz_base b
where a.info_id = b.info_id and a.rvsn_number=b.rvsn_number;

查询结果如下:

同义词使用解决方案

在数据源(Database MateData)中,Oracle数据库对象只有:Tables、Views、Procedures三种,无同义词Synonyms选项。

怎样能使用同义词(Synonyms)呢?

在创建Webservice时,先选择可见的某个或几个数据库中的表,如上图例所示选择了SUN_BIZ_BASE和SUN_FOCUSPROCESS两个表。

新建自定义Webservice,名称为:QueryBizList

通过WS-AppServer Package工具,生成如下Java代码,再通过同步代码到SVN,基于Eclipse开发工具,编写涉及到同义词SQL语句代码。

/*
  This class has been generated by the Code Generator
*/

package com.unicom.sun.sunpackage;

import com.cordys.cpc.bsf.busobject.BusObjectConfig;
import com.cordys.cpc.bsf.busobject.QueryObject;

public class SUN_BIZ_BASE extends SUN_BIZ_BASEBase
{
    public SUN_BIZ_BASE()
    {
        this((BusObjectConfig)null);
    }

    public SUN_BIZ_BASE(BusObjectConfig config)
    {
        super(config);
    }

    public static String QueryBizList()
    {
        String sql="select a.title,to_char(a.live_date,‘yyyy-mm-dd‘),b.endflow ";
        sql += " from sun_biz_info a,sun_biz_base b ";
        sql += " where a.info_id = b.info_id and a.rvsn_number=b.rvsn_number";

        QueryObject query = new QueryObject(sql);
        // TODO implement body
        return query.getObject().toString();
    }
}

注:上述SQL语句中,“表”sun_biz_info是同义词。

通过SVN把Java代码导回Cordys平台,编译代码并发布及发布Webservice,使用Webservice测试工具Operation Test Tool,测试结果如下:

结论

通过本次验证,实现了在Cordys平台上使用Oracle同义词技术方案,结论如下:

  • 1.私有同义词与公有同义词没有区别;
  • 2.Database Metadata 中并不提供针对同义词的服务,也不会把同义词识别为表。也就是说,不能通过Database Metadata 直接为同义词创建method;
  • 3.使用同义词就是首先通过其他表(Tables)创建method,然后修改这个method的SQL语句,改为对同义词的操作。

由于作者水平有限,欢迎反馈讨论。

相关文档:Oracle同义词简明用法 肖永威 2015.5

时间: 2024-08-01 05:09:55

Crodys 使用Oracle同义词解决方案的相关文章

[转]oracle 同义词 synonym

本文转自:http://blog.csdn.net/generalfu/article/details/7906561 同义词定义 当一个用户想访问另外一个用户的表时, 需要在表前加用户名,总加表名不方便, 为此可以为用户名.表名起个小名别名, 以方便访问,此别名就是同义词.创建同义词 create synonym  同义词名  for 用户名.表名称; 删除同义词 drop  synonym  syn_name; 测试实例 --没有创建同义词之前 [sql] view plaincopypri

Oracle同义词概念

Oracle同义词 Oracle的同义词(synonyms)跟View功能类似,但更强大.在Oracle数据库中的大部分数据库对象,如表.视图.物化视图.序列.函数.存储过程.包.同义词等等都可以做为同义词.其目的主要有2个:用于简化对象访问和提高对象访问的安全性. 下面简单做个演示: SQL> conn scott/tiger Connected. SQL> create table test1 (id number); Table created. SQL> insert into

oracle 电子商务解决方案演讲会笔记

1. 电商营销(CRM) - 高端客户的体验 2. 当当网李国庆做 "千人千面"的购物体验 3. 唯品会使用了oracle的CRM 4. 个性化的东西,得用户体验者得天下. 5. 奖励长期关系,维护客户忠诚度. 6. ebay产品推荐用oracle的 7. Atg + Endeca + Fatwire 8. Nike 鞋子定制,彰显个性,私有定制. 9. 电商给客户的体验是一对一的专属服务,区别于淘宝的大众化消费体验. 10. 电子商务重在营销和运营 11.宝格丽的营销策略是私人定制,

ORACLE 同义词(SYNONYM)详解

以下内容整理自Oracle 官方文档 一 概念 A synonym is an alias for any table, view,materialized view, sequence, procedure, function, package, type, Java classschema object, user-defined object type, or another synonym. Because a synonymis simply an alias, it requires

Oracle同义词创建及其作用

Oracle的同义词(synonyms)从字面上理解就是别名的意思,和试图的功能类似,就是一种映射关系.本文介绍如何创建同义词语句,删除同义词以及查看同义词语句. oracle的同义词总结: 从字面上理解就是别名的意思,和试图的功能类似.就是一种映射关系. 1.创建同义词语句: create public synonym table_name for user.table_name; 其中第一个user_table和第二个user_table可以不一样. 此外如果要创建一个远程的数据库上的某张表

ORACLE同义词总结

作者:潇湘隐者 出处:http://www.cnblogs.com/kerrycode/ 同义词概念 Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能.同义词是数据库对象的一个别名,经常用于简化对象访问和提高对象访问的安全性.在使用同义词时,Oracle数据库将它翻译成

中国银行ORACLE数据仓库解决方案

中国的银行业在发展过程中,已逐步积累了大量的客户数据和经营数据.如何利用这些数据,发掘有价值的信息,为今天中国银行业所普遍关心.而解决问题的关键,是建立银行企业级的数据仓库,实现对银行所有经营信息和客户信息的有效存储,并针对银行不同部门的管理决策需要,进行多层次的数据加工处理,满足银行管理决策和客户分析的需要. Oracle公司作为世界上著名的数据库公司,一直致力于为企业提供能满足企业竞争需要的数据仓库解决方案.Oracle的数据仓库解决方案包含了数据库平台.开发工具和应用系统.Oracle数据

oracle同义词创建(synonym)

plsql developer -- Create the synonym create or replace synonym AC59 for GGYW_QY.AC59; 同义词概念 Oracle的同义词(synonyms)从字面上理解就是别名的意思,和视图的功能类似,就是一种映射关系.它可以节省大量的数据库空间,对不同用户的操作同一张表没有多少差别;它扩展了数据库的使用范围,能够在不同的数据库用户之间实现无缝交互;Oracle数据库中提供了同义词管理的功能.同义词是数据库对象的一个别名,经常

Oracle备份解决方案

备份解决方案 使用以下方法可执行备份: Recovery Manager Oracle Secure Backup 用户管理的备份 Recovery Manager (RMAN) 是推荐使用的 Oracle DB 备份方法.Oracle Secure Backup 通过添加了备份到磁带功能和网络备份功能,补充了现有功能.用户管理的备份是基于脚本的,因此 DBA 必须编写脚本.这种方法正逐渐被淘汰,因为它需要较多的人工.Oracle Secure Backup Oracle Secure Back