暂无图片
暂无图片
暂无图片
暂无图片
暂无图片

【AntDB数据库】AntDB数据库核心功能(二)

原创 手机用户2069 2022-08-05
526

核心功能

Oracle兼容性

AntDB 与Oracle数据库高度兼容,使得企业现有的基于Oracle数据库开发的应用程序无需做任何修改或只做少量的修改便可以运行在AntDB平台之上,由此降低了程序迁移的风险,减少了重写应用的成本,从而实现高效快捷的应用迁移。

AntDB与Oracle数据库的兼容性包括:Oracle语法兼容、函数兼容、系统表/视图兼容、存储过程和触发器兼容、数据类型兼容、 OCI和JDBC调用接口兼容、管理包兼容、 rowid/rownum和dual虚表等。基于高度的兼容特性,可以实现AntDB和Oracle的异构数据库容灾实现上线初期两套数据库并行运行一段时间。

AntDB支持使用oracle兼容模式进行数据库访问,支持服务器级别、会话级别和语句级别来切换兼容开关。

用户只需在JDBC的连接URL中增加grammar=oracle参数设置,即可通过JDBC使用oracle兼容模式进行应用开发。

下面简要列出AntDB语法与oracle语法对比:

1、数据类型对比:

OracleAntDBPostgreSQL
varchar2varchar2varchar
char(n)char(n)char(n)
date(日期)date(日期)timestamp(时间日期型)、date(日期)、time(时间)
number(n)number(n)smallint、int、bigint
number(p,n)number(p,n)numeric(p,n)(低效)、float(高效)
clobclobtext
blobblobbytea
rownumrownum
rowidrowidctid

2、常用函数对比

函数名称OracleAntDBPostgreSQL
ABS支持支持支持
ACOS支持支持支持
ASIN支持支持支持
ATAN支持支持支持
ATAN2支持支持支持
BITAND支持支持支持
CEIL支持支持支持
COS支持支持支持
COSH支持支持支持
EXP支持支持支持
FLOOR支持支持支持
LN支持支持支持
LOG支持支持支持
MOD支持支持支持
NANVL支持支持扩展支持
POWER支持支持支持
ROUND (number)支持支持支持
SIGN支持支持支持
SIN支持支持支持
SINH支持支持扩展支持
SQRT支持支持支持
TAN支持支持支持
TANH支持支持扩展支持
TRUNC (number)支持支持支持
CHR支持支持支持
CONCAT支持支持支持
INITCAP支持支持支持
LOWER支持支持支持
LPAD支持支持支持
LTRIM支持支持支持
REGEXP_REPLACE支持支持支持
REGEXP_SUBSTR支持支持不支持
REPLACE支持支持支持
RPAD支持支持支持
RTRIM支持支持支持
SUBSTR支持支持支持
TRANSLATE支持支持支持
TREAT支持不支持不支持
TRIM支持支持支持
UPPER支持支持支持
ASCII支持支持支持
INSTR支持支持扩展支持
LENGTH支持支持支持
REGEXP_INSTR支持支持不支持
REVERSE支持支持支持
ADD_MONTHS支持支持扩展支持
CURRENT_DATE支持支持支持
CURRENT_TIMESTAMP支持支持支持
EXTRACT (datetime)支持支持支持
LAST_DAY支持支持扩展支持
LOCALTIMESTAMP支持不支持 关键字不支持 关键字
MONTHS_BETWEEN支持支持扩展支持
NEW_TIME支持支持不支持
NEXT_DAY支持支持扩展支持
ROUND (date)支持支持不支持
SYSDATE支持支持不支持
SYSTIMESTAMP支持支持不支持
TO_CHAR (datetime)支持支持支持
TO_TIMESTAMP支持支持支持
TRUNC (date)支持支持支持
DECODE支持支持扩展支持
DUMP支持支持扩展支持
COALESCE支持支持支持
LNNVL支持支持扩展支持
NANVL支持支持扩展支持
NULLIF支持支持支持
NVL支持支持扩展支持
NVL2支持支持扩展支持
GREATEST支持支持支持
LEAST支持支持支持
类型转换函数支持支持支持
CONVERT支持支持扩展支持
TO_CHAR (character)支持支持支持
TO_CHAR (datetime)支持支持支持
TO_CHAR (number)支持支持支持
TO_DATE支持支持支持
TO_NUMBER支持支持支持
TO_TIMESTAMP支持支持支持
AVG *支持支持支持
COUNT *支持支持支持
DENSE_RANK支持支持支持
FIRST支持不支持不支持
FIRST_VALUE *支持支持支持
LAG支持支持支持
LAST支持不支持不支持
LAST_VALUE *支持支持支持
LEAD支持支持支持
MAX *支持支持支持
MIN *支持支持支持
RANK支持支持支持
ROW_NUMBER支持支持支持
SUM *支持支持支持

3、运算符

运算符名称OracleAntDBPostgreSQL
+支持支持支持
-支持支持支持
*支持支持支持
/支持支持支持
and支持支持支持
or支持支持支持
not支持支持支持
!=支持支持支持
<>支持支持支持
^=支持不支持不支持
=支持支持支持
<支持支持支持
>支持支持支持
支持支持支持
>=支持支持支持
is (not) null支持支持支持
(not) between and支持支持支持
(not)in支持支持支持
all/any支持支持支持
exists支持支持支持
like支持支持支持
ll支持支持支持
union (all)支持支持支持
minus支持支持支持
intersect支持不支持支持

4、查询关键字

名称OracleAntDBPostgreSQL
distinct支持支持支持
unique支持不支持不支持
group by支持支持支持
having支持支持支持
order by支持支持支持
connect by支持支持不支持
cte支持支持支持
case when支持支持支持
insert all into支持不支持( insert into values替代)不支持 ( insert into values替代)
merge into支持不支持( upsert替代)不支持 ( upsert替代)

5、表连接

表连接名称OracleAntDBPostgreSQL
(inner) join支持支持支持
from tableA,tableB支持支持支持
left (outer) join支持支持支持
right (outer) join支持支持支持
full (outer) join支持支持支持
(+)支持支持不支持

6、其他

名称OracleAntDBPostgreSQL
declare支持支持支持
exception支持支持支持
cursor支持支持支持
create type支持支持支持
alter type支持支持支持
drop type支持支持支持
隐式转换支持支持不支持
oracle别名支持支持不支持
Oracle 同义词支持支持不支持
%type支持支持支持
%rowtype支持支持支持
%支持支持支持
_支持支持支持
dual支持支持不支持

AntDB数据库始于2008年,在运营商的核心系统上,为全国24个省份的10亿多用户提供在线服务,具备高性能、弹性扩展、高可靠等产品特性,峰值每秒可处理百万笔电信核心交易,保障系统持续稳定运行近十年,并在通信、金融、交通、能源、物联网等行业成功商用落地。

「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。

评论