目前有哪些国产关系型数据库支持存储过程功能?支持功能的丰富度怎么样?

存储过程类似于面向过程语言当中的函数,可以实现面向过程语言当中的声明变量、逻辑判断、条件循环等操作,是一组完成特定功能的SQL语句集合。存储过程能让数据库运行速度更快、SQL安全性更高。银行有很多OLTP应用使用Oracle、Db2的存储过程功能来实现业务需求,比如PACKAGE、存储过程调试/PLDEBUGGER、自治事务等。一般分布式数据库或分布式数据库中间件是不支持存储过程的,或支持的很少、不全。如果国产数据库对存储过程不支持、或功能太弱,要做整个系统的存储过程改造会是非常艰巨的任务、甚至会导致无法迁移。

请各位同行们能分享现在有哪些国产关系型数据库支持存储过程功能?支持功能的丰富度怎么样?

参与36

11同行回答

lych370lych370联盟成员系统运维工程师个人
国产的本身应该就很少,用到过的tidb好像不支持存储过程,中兴有个goldendb的产品好像是支持的,可以具体再了解下,其他产品不熟悉显示全部

国产的本身应该就很少,用到过的tidb好像不支持存储过程,中兴有个goldendb的产品好像是支持的,可以具体再了解下,其他产品不熟悉

收起
银行 · 2022-09-15
浏览1397
lulihuan1987lulihuan1987课题专家组数据库管理员张家港行
目前我们使用的华为gaussdb支持存储过程,tdsqlmysql版本中分布式实例不支持存储过程,集中式实例支持存储过程。tdsql pg版本支持存储过程。另外,测试过的ob也支持存储过程。总体来看,交易型系统优先通过程序去改造存储过程,分析型系统目前国产分布式数据库也可以满足存储过程...显示全部

目前我们使用的华为gaussdb支持存储过程,tdsqlmysql版本中分布式实例不支持存储过程,集中式实例支持存储过程。tdsql pg版本支持存储过程。另外,测试过的ob也支持存储过程。总体来看,交易型系统优先通过程序去改造存储过程,分析型系统目前国产分布式数据库也可以满足存储过程的迁移。

收起
银行 · 2022-10-09
wangzk0206wangzk0206数据库管理员scrcu
首先OceanBase数据库是支持存储过程的,功能在分布式数据库来讲还不错。还有一些传统类型的国产数据库也是支持存储过程的,例如PG条线的国产数据库。但针对存储过程这个话题,其实我也可以大致的说一下,我们采用的国产数据库是OB,但存储过程这块我们基本没用,从源系统改造过来的...显示全部

首先OceanBase数据库是支持存储过程的,功能在分布式数据库来讲还不错。还有一些传统类型的国产数据库也是支持存储过程的,例如PG条线的国产数据库。
但针对存储过程这个话题,其实我也可以大致的说一下,我们采用的国产数据库是OB,但存储过程这块我们基本没用,从源系统改造过来的系统,大部分我们都要求改造了。不使用存储过程我们是基于以下几个原因,1是更加方面数据库的替换,因为存储过程在每个国产数据库实现方法不太一样,语法也不太一样,我们必须做好快速方便替换数据库的准备。2是OB数据库是分布式数据库,放一个传统类型的存储过程在上面,特别对于多中心部署架构来讲,可能性能并不佳,同时相对于应用的扩展能力来讲,存储过程是在数据库服务器端执行的,并发能力可能就会受限。
所以既然改造,长痛不如短痛。能改造的尽量就改了。存储过程这个是Oracle时代的产物,国产数据库使用起来怎么样,有待验证。可能对于特定的业务系统,还是有用的价值。

收起
银行 · 2023-06-17
浏览846
dongbayoudongbayou软件开发工程师digitalchina
国产分布式数据库对于存储过程的支持有限,并且厂商也不建议使用存储过程,部分厂商都不建议使用存储过程进行生产刷数处理,可见分布式数据库的存储过程是支持,但还没有达到生产级可用级别,另外在分布式数据的场景下,存储过程处理分布式数据及分布式事务的挑战也非常大,远远大于应...显示全部

国产分布式数据库对于存储过程的支持有限,并且厂商也不建议使用存储过程,部分厂商都不建议使用存储过程进行生产刷数处理,可见分布式数据库的存储过程是支持,但还没有达到生产级可用级别,另外在分布式数据的场景下,存储过程处理分布式数据及分布式事务的挑战也非常大,远远大于应用实现,对于扩展性也是有限,严重依赖于数据库集群,对于重要业务系统来说,还是避免使用存储过程

收起
软件开发 · 2023-06-15
浏览851
lizhao01lizhao01数据库负责人海尔消费金融
OB目前看来还不错,向Oracle兼容。但是如果想替换到国产数据库可能面临很多不兼容,可以退而求其次在应用端实现逻辑,这样写后端的水平要求反而变高了。如果替换国产开发能力一定得跟的上。...显示全部

OB目前看来还不错,向Oracle兼容。但是如果想替换到国产数据库可能面临很多不兼容,可以退而求其次在应用端实现逻辑,这样写后端的水平要求反而变高了。如果替换国产开发能力一定得跟的上。

收起
银行 · 2022-10-09
浏览1326
luckman_2008luckman_2008系统运维工程师人寿保险
支持存储过程的比较少,一般都是通过修改实现方式。显示全部

支持存储过程的比较少,一般都是通过修改实现方式。

收起
保险 · 2022-09-15
浏览1423
libai21libai21课题专家组软件架构设计师海通证券
我测试了一些,都是支持的。但是和oracle语法兼容度最好的还是OB。使用OB迁移工具可以很方便的就能把oracle的存储过程迁移到OB里面。显示全部

我测试了一些,都是支持的。但是和oracle语法兼容度最好的还是OB。
使用OB迁移工具可以很方便的就能把oracle的存储过程迁移到OB里面。

收起
证券 · 2022-09-26
浏览1343
匿名用户匿名用户
从国产数据库现状了解,达梦数据库是最接近ORACLE数据库,ORACLE数据库的存储过程在此数据库上大部分都无需调整,直接运行;基于PG的数据库如华为高斯、腾讯TDSQL_PG等对存储过程支持也不错,大部分存储过程也无需调整就能直接运行,好些数据库介绍基于他们的迁移工具迁移成功率99%,...显示全部

从国产数据库现状了解,达梦数据库是最接近ORACLE数据库,ORACLE数据库的存储过程在此数据库上大部分都无需调整,直接运行;基于PG的数据库如华为高斯、腾讯TDSQL_PG等对存储过程支持也不错,大部分存储过程也无需调整就能直接运行,好些数据库介绍基于他们的迁移工具迁移成功率99%,仅需几天就完成一套系统迁移。

收起
保险 · 2022-09-16
浏览1373
zhanxuechaozhanxuechao咨询专家数字研究院
通过程序实现吧,感觉存储过程是一个逐渐被淘汰的产物,不灵活,同时代码实现可以在优化上更灵活一些。显示全部

通过程序实现吧,感觉存储过程是一个逐渐被淘汰的产物,不灵活,同时代码实现可以在优化上更灵活一些。

收起
IT咨询服务 · 2022-09-16
浏览1397
vvwebvvweb技术支持gzzkf
南大通用 的GBase, GBase是基于informix 源码编译的国产数据库,在存储过程支持上相对其他一些国产数据库较丰富一些。显示全部

南大通用 的GBase, GBase是基于informix 源码编译的国产数据库,在存储过程支持上相对其他一些国产数据库较丰富一些。

收起
金融其它 · 2022-09-15
浏览1417

ChatGPT 回答

目前国产关系型数据库中,支持存储过程功能的主要有以下几种:

  1. 华为 GaussDB:支持存储过程、触发器、自定义函数等,功能丰富,性能优异。
  2. 中兴数据库:支持存储过程、触发器、自定义函数等,功能较为丰富,但在性能方面还有待提升。
  3. 神州数码数据库:支持存储过程、触发器、自定义函数等,功能较为丰富,但在性能方面还有待提升。
  4. 南大通用数据库:支持存储过程、触发器、自定义函数等,功能较为丰富,但在性能方面还有待提升。

需要注意的是,虽然这些国产关系型数据库都支持存储过程功能,但在具体的功能实现和性能表现上还是有差异的,需要根据具体的业务需求进行选择。同时,由于国产数据库的发展还比较年轻,可能在一些细节方面还存在不足,需要在实际使用中进行验证和优化。

提问者

stefaniesun
软件开发工程师某金融单位

相关问题

相关资料

相关文章

问题状态

  • 发布时间:2022-09-15
  • 关注会员:13 人
  • 问题浏览:4062
  • 最近回答:2023-06-17
  • X社区推广