问题描述
我已经使用下面的查询创建了一个数据库链接,将12.1版本DB链接到12.2版本DB。由于12.1版本的Oracle DB不支持JSON。
我试图在DBLINK创建的数据库中执行JSON查询:
我也尝试在from子句中使用DBLINK,如下所示:
我收到以下错误:
请帮忙。
请注意: am在12.2版本DB上执行JSON查询,其中DB链接是使用源数据库 (12.1版本) 创建的。
CREATE DATABASE LINK dblink_SBX CONNECT TO SOURCEDB IDENTIFIED BY SOURCEDB USING '(DESCRIPTION = (ADDRESS_LIST = (ADDRESS = (PROTOCOL = TCP)(HOST = XYZ)(PORT = 1521)) ) (CONNECT_DATA = (SID= ABCD) ) )';复制
我试图在DBLINK创建的数据库中执行JSON查询:
select JSON_OBJECT ('EMPNO' VALUE EMP_ID) from EMP;复制
我也尝试在from子句中使用DBLINK,如下所示:
select JSON_OBJECT ('EMPNO' VALUE EMP_ID) from EMP@dblink_SBX;复制
我收到以下错误:
ORA-02063: preceding line from DBLINK_SBX 00907. 00000 - "missing right parenthesis" *Cause: *Action:复制
请帮忙。
请注意: am在12.2版本DB上执行JSON查询,其中DB链接是使用源数据库 (12.1版本) 创建的。
专家解答
您运行的查询必须是本地数据库上的有效语法。JSON_object是一个12.2的功能,所以:
即使在远程数据库上有效,也无法在12.1上使用。
根据你想做的事情,你可以通过以下方式解决这个问题:
-在包含您的查询的12.2数据库上创建函数
-通过DB链接调用函数
select JSON_OBJECT ('EMPNO' VALUE EMP_ID) from EMP@dblink_SBX;复制
即使在远程数据库上有效,也无法在12.1上使用。
根据你想做的事情,你可以通过以下方式解决这个问题:
-在包含您的查询的12.2数据库上创建函数
-通过DB链接调用函数
文章转载自ASKTOM,如果涉嫌侵权,请发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。
评论
相关阅读
Oracle RAC 一键安装翻车?手把手教你如何排错!
Lucifer三思而后行
563次阅读
2025-04-15 17:24:06
【纯干货】Oracle 19C RU 19.27 发布,如何快速升级和安装?
Lucifer三思而后行
493次阅读
2025-04-18 14:18:38
Oracle SQL 执行计划分析与优化指南
Digital Observer
464次阅读
2025-04-01 11:08:44
XTTS跨版本迁移升级方案(11g to 19c RAC for Linux)
zwtian
455次阅读
2025-04-08 09:12:48
墨天轮个人数说知识点合集
JiekeXu
455次阅读
2025-04-01 15:56:03
【ORACLE】记录一些ORACLE的merge into语句的BUG
DarkAthena
442次阅读
2025-04-22 00:20:37
Oracle数据库一键巡检并生成HTML结果,免费脚本速来下载!
陈举超
430次阅读
2025-04-20 10:07:02
【ORACLE】你以为的真的是你以为的么?--ORA-38104: Columns referenced in the ON Clause cannot be updated
DarkAthena
417次阅读
2025-04-22 00:13:51
Oracle 19c RAC更换IP实战,运维必看!
szrsu
403次阅读
2025-04-08 23:57:08
【活动】分享你的压箱底干货文档,三篇解锁进阶奖励!
墨天轮编辑部
374次阅读
2025-04-17 17:02:24