正德厚生,臻于至善

Oracle EBS 19c数据库pljson支持

Oracle EBS 19c 数据库支持 pljson,但需注意版本适配、安装配置及与 EBS 环境的兼容性,以下从核心支持情况、安装部署、常见问题与替代方案详细说明:

一、核心支持情况

  1. 数据库层面:Oracle 19c(12.2.0.3)原生已提供 JSON 支持(如DBMS_JSONJSON_OBJECT_T),但 pljson 作为第三方开源库,兼容 19c,可正常部署使用。pljson 3.x 版本已规避与 19c 原生 JSON 关键字冲突问题(对象 / 包名前缀改为PLJSON_)。
  2. EBS 环境适配:EBS R12.1/R12.2 认证支持 19c(单 PDB 架构),pljson 可在 EBS 的 19c PDB 中部署,不影响 EBS 核心业务表与标准功能Oracle Support。

二、pljson 安装部署(EBS 19c PDB)

1. 准备工作

  • 下载 pljson 3.x 最新版(GitHub:https://github.com/pljson/pljson)。
  • 解压至数据库服务器可访问目录(如/u01/pljson)。
  • 登录 EBS 19c PDB(sqlplus apps/xxx@ebspdb),建议用独立用户(如 PLJSON) 安装,避免与 EBS 核心用户冲突:
CREATE USER PLJSON IDENTIFIED BY xxx DEFAULT TABLESPACE APPS_TS_TX_DATA;
GRANT CONNECT, RESOURCE, CREATE TYPE, CREATE PACKAGE TO PLJSON;

2. 执行安装脚本

-- 切换至pljson用户
CONNECT PLJSON/xxx@ebspdb;
-- 执行安装脚本(路径根据实际调整)
@/u01/pljson/install.sql;
  • 安装成功会输出 “Type created”“Package body created”,无报错。
  • 验证安装:
DECLARE
  v_json PLJSON_OBJECT;
BEGIN
  v_json := PLJSON_OBJECT();
  v_json.put('name', 'EBS19c');
  DBMS_OUTPUT.PUT_LINE(v_json.toString());
END;
/

3. 权限配置(供 EBS 用户调用)

-- 授予apps用户访问权限
GRANT EXECUTE ON PLJSON_OBJECT TO APPS;
GRANT EXECUTE ON PLJSON_ARRAY TO APPS;

三、常见问题与解决方案

  1. ORA-22922:不存在的 LOB 值
    • 问题:19c 中使用 pljson_table 时偶发 LOB 定位器错误。
    • 解决:避免事务中途提交 / 回滚;升级 pljson 至 3.0.5+;临时注释 pljson_table 异常处理代码(测试环境)。
  2. 与 EBS 原生 JSON 冲突
    • 问题:旧版 pljson(2.x)对象名以JSON_开头,与 19c 原生 JSON 类型冲突。
    • 解决:使用 pljson 3.x,前缀统一为PLJSON_,无命名冲突。
  3. EBS 升级后 pljson 失效
    • 问题:EBS 补丁 / 数据库升级后,pljson 对象失效。
    • 解决:重新编译 pljson 对象;或执行@/u01/pljson/install.sql重装。

四、pljson 与 19c 原生 JSON 对比

特性pljson(3.x)Oracle 19c 原生 JSON(DBMS_JSON)
兼容性兼容 10g-19c,跨版本一致仅 12c+,19c 功能完善
功能JSON 解析 / 序列化、路径查询、嵌套对象原生类型支持、索引优化、SQL 级 JSON 查询
性能适合轻量级 JSON 处理大数据量 / 高并发场景性能更优
EBS 适配独立用户部署,不侵入核心表可直接在 APPS 用户使用,无需额外安装

五、建议方案

  1. 轻量级场景(接口解析、小 JSON 处理):使用pljson 3.x,部署简单,兼容 EBS 现有代码,迁移成本低。
  2. 高性能 / 大数据量场景:优先使用Oracle 19c 原生 JSONDBMS_JSONJSON_TABLE),避免第三方库维护成本,性能更优。
  3. EBS 升级注意:升级 19c 前,先备份 pljson 代码;升级后重新编译或重装,确保与新环境兼容。
赞(0) 打赏
未经允许不得转载:徐万新之路 » Oracle EBS 19c数据库pljson支持

支持快讯、专题、百度收录推送、人机验证、多级分类筛选器,适用于垂直站点、科技博客、个人站,扁平化设计、简洁白色、超多功能配置、会员中心、直达链接、文章图片弹窗、自动缩略图等...

联系我们

觉得文章有用就打赏一下文章作者

非常感谢你的打赏,我们将继续提供更多优质内容,让我们一起创建更加美好的网络世界!

支付宝扫一扫

微信扫一扫

登录

找回密码

注册