我试图解析值大于4000个字符的JSON属性。这是我的示例JSON:
[{
"id": "268edbb5d111",
"name": "Sample Product",
"status": "created",
"description": "this is sample product",
"productCharacteristic": [{
"name": "property_1",
"value": "abc",
"valueType": "String"
}, {
"name": "property_2",
"value": 123,
"valueType": "Number"
}, {
"name": "property_3",
"value": "2020-05-01T04:56:07.000+00:00",
"valueType": "Date"
}
]
}
]
这是PL/SQL代码:
FOR x IN (SELECT *
FROM json_table(l_response, '$[*]'
COLUMNS
id varchar2(255) PATH '$.id',
name varchar2(255) PATH '$.name',
description varchar2(255) PATH '$.description',
status varchar2(255) PATH '$.status',
productCharacteristic varchar2(4000) FORMAT JSON PATH '$.productCharacteristic'
)
) LOOP
-- do something
END LOOP;
ProductFeature属性可能长于4000,但将其datatype更改为VARCHAR2(32000)将使用ORA-00910:指定的长度对其datatype太长来编译包,并更改为CLOB将返回ORA-40484:JSON_TABLE列的数据类型无效。是否有一种方法可以将整个ProductFeature数组作为JSON传递,并在循环中解析它?
谢了。
是否有一种方法可以将整个ProductFeature数组作为JSON传递,并在循环中解析它?
这可能不是您想要的,但您可以使用嵌套路径将所有数组元素展平:
FOR x IN (SELECT *
FROM json_table(l_response, '$[*]'
COLUMNS
id varchar2(255) PATH '$.id',
name varchar2(255) PATH '$.name',
description varchar2(255) PATH '$.description',
status varchar2(255) PATH '$.status',
nested path '$.productCharacteristic[*]'
COLUMNS (
product_name varchar2(255) PATH '$.name',
product_value varchar2(4000) PATH '$.value',
product_value_type varchar2(255) PATH '$.valueType'
)
)
) LOOP
-- do something
dbms_output.put_line(x.id || ' ' || x.product_name || ' ' || x.product_value);
END LOOP;
DB<>小提琴
我怎么能那么做? 编辑: 哦,伙计们。我发现该列实际上是我正在测试的测试系统中的一个varchar(4000),这样做(在prod中,它应该是一个clob)。你会怀疑我是不是第一个真正使用测试系统的人...
我一直在努力使我的JSON模式正确。我有一个属性,我必须根据它来确定所需的属性。下面是我的示例,我希望通过验证,因为不存在。 这是我希望通过验证的JSON 类似地,如果是,那么上述两个JSON的验证都应该通过。
问题内容: 我试图找到一种从的有效载荷中解析嵌套属性的干净方法。 这是有效负载的粗略概括: 我的目标是拥有具有和字段的对象数组。 有人知道干净地解析此内容的好方法吗? 现在,我正在尝试创建一个类,并在其中创建一个用于数据,值,用户等的静态内部类。 我用来呼叫端点。 问题答案: 您需要使用JsonPath库,该库仅允许您选择必填字段,然后可以将原始数据转换为类。解决方案示例如下所示: 上面的代码打印
问题内容: 给定以下格式( .properties 或 .ini ): 对于 Java ,提供了Properties类,该类提供了用于解析上述格式或与其进行交互的功能。 python 的 标准 库(2.x)中有类似的东西吗? 如果没有,我还有什么其他选择? 问题答案: 对于.ini文件,有一个ConfigParser模块,它提供与.ini文件兼容的格式。 无论如何,没有任何可用于解析完整的.pro
我有来自API的json形式的对象列表。这些对象有一些属性,问题是一些对象缺少属性。那么如何无错误地解析其他属性的数据呢? 例如,我有这个缺少的属性 但这所有属性都存在:
我有来自API的json形式的对象列表。这些对象有一些属性,问题是一些对象缺少属性。我的问题是:是否可以用颤振/飞镖分析这些数据?或者我必须更改为API响应,这样就不会缺少任何属性。 JSON数据: