sql - ORA-40593: 在执行 DBMS_JSON.CREATE_VIEW 期间发现名称冲突:名称
问题描述
使用 JSON_DATAGUIDE 创建视图时:
declare
dg clob;
BEGIN
SELECT json_dataguide(json_document, dbms_json.FORMAT_HIERARCHICAL, dbms_json.pretty) into dg
FROM STATION_INFORMATION;
dbms_json.create_view('STATION_INFORMATION_VIEW', 'STATION_INFORMATION', 'JSON_DOCUMENT', dg);
END;
/
我收到以下错误:
ORA-40593: name conflicts were found during execution of DBMS_JSON.CREATE_VIEW
解决方案
当数据指南在多个上下文中使用相同的 JSON 键名时,就会发生这种情况。您可以指定 resolveNameConflicts => true 让它自动使名称唯一。
declare
dg clob;
BEGIN
SELECT json_dataguide(json_document, dbms_json.FORMAT_HIERARCHICAL, dbms_json.pretty) into dg
FROM STATION_INFORMATION;
dbms_json.create_view('STATION_INFORMATION_VIEW', 'STATION_INFORMATION', 'JSON_DOCUMENT', dg, resolveNameConflicts => true);
END;
/
推荐阅读
- python - 如何读取多个excel文件并加载到一张excel表中
- java - 将视图与现有视频合并
- linux - 将文件中的一列复制为另一个文件中的第一列
- javascript - 单击按钮时启动文本动画,如果再次单击按钮,则清除并再次启动动画
- sapui5 - 如何使用 SAP UI5 生成 OTP 和验证?
- flutter - 避免多次解码图像
- javascript - 无法将变量名称从一个节点模块发送到另一个节点模块以将其用作使用 socket.io 的聊天应用程序的房间名称
- java - Itext 生成的 pdf 无法在 Adobe 阅读器中打开?
- jquery - 将数据表导出到橙色背景的 Excel
- javascript - 将使用节点 v6 制作的项目更新到节点 v10