oracle分布式数据库版本,去O路上的历程--开源分布式数据库产品对比(TBase VS AntDB)...

这篇博客对比了TBase和AntDB两个开源分布式数据库产品,分析了它们在支持Oracle数据库特定功能上的异同,包括日期处理、数学函数、字符串操作等方面。文章指出,尽管两者在大部分功能上都有所支持,但TBase在某些函数(如soundex、sys_extract_utc等)上存在不支持或实现错误的情况,而AntDB则相对完整。这对于考虑从Oracle迁移到这些开源解决方案的用户来说,提供了重要的参考信息。
摘要由CSDN通过智能技术生成

TBase

AntDB

substr

支持

支持

sign

支持

支持

sinh

支持

支持

tanh

支持

支持

cosh

支持

支持

trim

支持

支持

coalesce

支持

支持

extract

支持

支持

greatest

支持

支持

last_day

支持

支持

least

支持

支持

length

支持

支持

lnnvl

支持

支持

max

支持

支持

min

支持

支持

mod

支持

支持

month_between

支持

支持

to_yminterval

支持

支持

nullif

支持

支持

numtodsinterval

支持

支持

numtoyminterval

支持

支持

round_date

支持

支持

to_timestamp

支持

支持

rpad

支持

支持

to_single_byte

支持

支持

sessiontimezone

支持

支持

to_date

Tbase   to_date

函数对月份解析有错误;

tbase=# SELECT TO_date('January 15, 2010, 11:00 P.M.','Mon dd, YYYY, HH:MI   P.M.') FROM DUAL;

ERROR:  invalid value "ar"   for "dd"

DETAIL:  Value must be an integer.

支持

to_date+to_dsinterval

TBase

计算错误,正确值应该是

2016-01-04 14:20:50

postgres=# select to_date('1-3-2016 10:30:00','MM-DD-yyyy hh:mi:ss') +   to_dsinterval('1 3:50:50')  as ndate   from dual;

ndate

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

2016-01-04 03:50:50

(1 row)

支持

soundex

TBase

不支持

soundex

函数;

tbase=# select soundex('moon') from dual;

ERROR:  function soundex(unknown) does   not exist

LINE 1: select soundex('moon') from dual;

^

HINT:  No function matches the given   name and argument types. You might need to add explicit type casts.

支持

sys_extract_utc

TBase

不支持

sys_extract_utc

函数;

tbase=# SELECT SYS_EXTRACT_UTC(TIMESTAMP '2012-04-19 17:30:00 +08:00 ')   "CURRENT UTC TIME" FROM     DUAL;

ERROR:  function   sys_extract_utc(timestamp without time zone) does not exist

LINE 1: SELECT SYS_EXTRACT_UTC(TIMESTAMP '2012-04-19 17:30:00 +08:00...

^

HINT:  No function matches the given   name and argument types. You might need to add explicit type casts.

支持

trunc

TBase

trunc

函数传参参数类型支持不够,对数值型的支持(正负)不够,数据类型隐式转换不够;

tbase=# select trunc(3.25,'') from dual;

ERROR:  invalid input syntax for   integer: ""

LINE 1: select trunc(3.25,'') from dual;

^

tbase=# select trunc(100.984,-2.8) from dual;

ERROR:  function trunc(numeric,   numeric) does not exist

LINE 1: select trunc(100.984,-2.8) from dual;

^

HINT:  No function matches the given   name and argument types. You might need to add explicit type casts.

tbase=# select trunc(100.984,2.8) from dual;

ERROR:  function trunc(numeric,   numeric) does not exist

LINE 1: select trunc(100.984,2.8) from dual;

^

HINT:  No function matches the given   name and argument types. You might ne

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值