Greenplum 的Oracle兼容性之 - orafunc

本文涉及的产品
RDS PostgreSQL Serverless,0.5-4RCU 50GB 3个月
推荐场景:
对影评进行热评分析
云数据库 RDS SQL Server,基础系列 2核4GB
RDS MySQL Serverless 基础系列,0.5-2RCU 50GB
简介:

Greenplum gpAux下面有一个插件是orafunc,包含了常用的oracle函数:

add_months
bitand
concat
cosh
decode
dump
instr
last_day
listagg
lnnvl
months_between
nanvl
next_day
nlssort
nvl
nvl2
oracle.substr
reverse
round
sinh
tanh
trunc

安装方法:

cd gpsrc/gpAux/extensions/orafce/
export PATH=/home/digoal/gphome/bin:$PATH

make USE_PGXS=1
make USE_PGXS=1 install

将so拷贝到其他主机

gpscp -f ./host orafunc.so =:/home/digoal/gphome/lib/postgresql/orafunc.so

在需要安装oracle function的数据库中调用orafunc.sql

psql -f /home/digoal/gphome/share/postgresql/contrib/orafunc.sql

这些函数被安装到了oracompat schema的下面

postgres=# \df oracompat.*
                                                 List of functions
  Schema   |       Name       |     Result data type     |               Argument data types               |  Type  
-----------+------------------+--------------------------+-------------------------------------------------+--------
 oracompat | add_months       | date                     | day date, value integer                         | normal
 oracompat | bitand           | bigint                   | bigint, bigint                                  | normal
 oracompat | concat           | text                     | anyarray, anyarray                              | normal
 oracompat | concat           | text                     | anyarray, text                                  | normal
 oracompat | concat           | text                     | text, anyarray                                  | normal
 oracompat | concat           | text                     | text, text                                      | normal
 oracompat | dump             | character varying        | "any"                                           | normal
 oracompat | dump             | character varying        | "any", integer                                  | normal
 oracompat | instr            | integer                  | str text, patt text                             | normal
 oracompat | instr            | integer                  | str text, patt text, start integer              | normal
 oracompat | instr            | integer                  | str text, patt text, start integer, nth integer | normal
 oracompat | last_day         | date                     | value date                                      | normal
 oracompat | listagg          | text                     | text                                            | agg
 oracompat | listagg          | text                     | text, text                                      | agg
 oracompat | listagg1_transfn | text                     | text, text                                      | normal
 oracompat | listagg2_transfn | text                     | text, text, text                                | normal
 oracompat | lnnvl            | boolean                  | boolean                                         | normal
 oracompat | months_between   | numeric                  | date1 date, date2 date                          | normal
 oracompat | nanvl            | double precision         | double precision, double precision              | normal
 oracompat | nanvl            | numeric                  | numeric, numeric                                | normal
 oracompat | nanvl            | real                     | real, real                                      | normal
 oracompat | next_day         | date                     | value date, weekday integer                     | normal
 oracompat | next_day         | date                     | value date, weekday text                        | normal
 oracompat | nlssort          | bytea                    | text, text                                      | normal
 oracompat | nvl              | anyelement               | anyelement, anyelement                          | normal
 oracompat | nvl2             | anyelement               | anyelement, anyelement, anyelement              | normal
 oracompat | reverse          | text                     | str text                                        | normal
 oracompat | reverse          | text                     | str text, start integer                         | normal
 oracompat | reverse          | text                     | str text, start integer, _end integer           | normal
 oracompat | round            | date                     | value date                                      | normal
 oracompat | round            | date                     | value date, fmt text                            | normal
 oracompat | round            | timestamp with time zone | value timestamp with time zone                  | normal
 oracompat | round            | timestamp with time zone | value timestamp with time zone, fmt text        | normal
 oracompat | substr           | text                     | str text, start integer                         | normal
 oracompat | substr           | text                     | str text, start integer, len integer            | normal
 oracompat | trunc            | date                     | value date                                      | normal
 oracompat | trunc            | date                     | value date, fmt text                            | normal
 oracompat | trunc            | timestamp with time zone | value timestamp with time zone                  | normal
 oracompat | trunc            | timestamp with time zone | value timestamp with time zone, fmt text        | normal
(39 rows)

文档参考
http://gpdb.docs.pivotal.io/4360/utility_guide/orafce_ref.html

目录
相关文章
|
7月前
|
存储 Oracle 关系型数据库
PolarDB 开源版通过orafce支持Oracle兼容性
背景PolarDB 的云原生存算分离架构, 具备低廉的数据存储、高效扩展弹性、高速多机并行计算能力、高速数据搜索和处理; PolarDB与计算算法结合, 将实现双剑合璧, 推动业务数据的价值产出, 将数据变成生产力.本文将介绍PolarDB开源版通过orafce支持Oracle兼容性 .测试环境为m...
135 0
|
SQL 存储 Oracle
这可能是目前Oracle兼容性最好的数据库 - 十四年Oracle兼容性淬炼
标签 PostgreSQL , EDB , ppas , epas , enterprisedb , 阿里云 背景 Oracle兼容性越高,迁移改造工作量越少,时间成本越低。对于大多数传统企业来说,去O已势在必行。 PostgreSQL 数据库本身与O的兼容性还行,同时功能覆盖度也还是很不错的,所以自己有专业研发团队的企业,选择PG来去O是不错的选择,其中也有很多非常成功的案例,例如平
1943 0
|
存储 并行计算 Oracle
PolarDB 开源版通过orafce支持Oracle兼容性
PolarDB 的云原生存算分离架构, 具备低廉的数据存储、高效扩展弹性、高速多机并行计算能力、高速数据搜索和处理; PolarDB与计算算法结合, 将实现双剑合璧, 推动业务数据的价值产出, 将数据变成生产力. 本文将介绍PolarDB开源版通过orafce支持Oracle兼容性 .
528 0
|
SQL Oracle 关系型数据库
Java 技术篇 - java同时连接多种数据库执行sql语句的兼容性验证,数据库类型包括:oracle、sqlserver、DB2、人大金仓、达梦、PG、瀚高、polardb
Java 技术篇 - java同时连接多种数据库执行sql语句的兼容性验证,数据库类型包括:oracle、sqlserver、DB2、人大金仓、达梦、PG、瀚高、polardb
854 0
Java 技术篇 - java同时连接多种数据库执行sql语句的兼容性验证,数据库类型包括:oracle、sqlserver、DB2、人大金仓、达梦、PG、瀚高、polardb
|
SQL Oracle 关系型数据库
【学习资料】第1期Oracle DBA 增值 PostgreSQL,Greenplum 学习计划 - 珍藏级
大家好,这里是Oracle DBA 增值 PostgreSQL,Greenplum 学习计划 - 珍藏级
|
SQL 监控 Oracle
PostgreSQL Oracle 兼容性之 - performance insight - AWS performance insight 理念与实现解读 - 珍藏级
PostgreSQL , perf insight , 等待事件 , 采样 , 发现问题 , Oracle 兼容性
843 0
|
SQL 监控 数据可视化
解读PostgreSQL Oracle 兼容性之 - performance insight(性能洞察)
标签 PostgreSQL , perf insight , 等待事件 , 采样 , 发现问题 , Oracle 兼容性 背景 通常普通的监控会包括系统资源的监控: cpu io 内存 网络 等,但是仅凭资源的监控,当问题发生时,如何快速的定位到问题在哪里?需要更高级的监控: 更高级的监控方法通常是从数据库本身的
929 0
|
SQL 存储 Oracle
PostgreSQL , EDB EPAS PPAS(兼容Oracle) , Oracle 对比(兼容性、特性优劣势) - 企业去O,去IOE
标签 PostgreSQL , PPAS , EPAS , edb , enterprisedb , Oracle , 兼容性 , 优缺点 背景 EPAS为EDB的PostgreSQL Oracle兼容企业版,基于PostgreSQL社区版本开发,2004年发布了第一个Oracle兼容版,已经在ORACLE兼容性上耕耘了15年。 2018年推出EPAS 11 版本,完成了 Oracle
2173 0
|
SQL 存储 Oracle
PostgreSQL Oracle 兼容性 - Oracle 19c 新特性在PostgreSQL中的使用
标签 PostgreSQL , Oracle 兼容性 , Oracle 19c 背景 《PostgreSQL 覆盖 Oracle 18c 重大新特性》 Oracle 19c 新特性摘自盖老师《Oracle 19c 新特性及官方文档抢鲜下载》文章,其中有一些特性在PostgreSQL中很早以前已经支持。本文旨在介绍PG如何使用这些特性。 1.Data Guard 备库DML自动重定向
735 0
|
存储 弹性计算 Oracle
PostgreSQL Oracle 兼容性之 - nested table
标签 PostgreSQL , Oracle , 兼容性 , nested table 背景 Oracle nested table功能介绍如下 http://www.orafaq.com/wiki/NESTED_TABLE NESTED TABLE is an Oracle data type used to support columns containing multivalu
655 0

推荐镜像

更多