0

我在 Oracle 12.0.1.2 版本中使用 PL/SQL。我正在从包中调用 REST API 并在变量“res”中接收响应。代码片段:

req            UTL_HTTP.req;
res            UTL_HTTP.resp;
req := UTL_HTTP.begin_request (URL_POST, 'POST', ' HTTP/1.1');
UTL_HTTP.set_header (req, 'user-agent', 'mozilla/4.0');
UTL_HTTP.set_header (req, 'content-type', 'application/json');
UTL_HTTP.set_header (req, 'Content-Length', LENGTH (post_payload));
UTL_HTTP.write_text (req, post_payload);
res := UTL_HTTP.get_response (req);

响应看起来像这样(有 100 多条信息记录):

{
 "data": [
          {
            "BATCH_ID": 124,
            "BADGE_NUMBER": "10002",
            "CURRENCY_CODE": "USD",
            "ROLE_NAME": "xyz",
            "ROLE_START_DATE": "1-Aug-2020",
            "START_PERIOD": "Aug-FY21",
            "END_PERIOD": "Jan-FY21",
            "COMMENTS": "",
            
          },
          {
            "BATCH_ID": 125,
            "BADGE_NUMBER": "100023",
            "CURRENCY_CODE": "USD",
            "ROLE_NAME": "xye",
            "ROLE_START_DATE": "1-Aug-2020",
            "START_PERIOD": "Aug-FY21",
            "END_PERIOD": "Jan-FY21",
            "COMMENTS": "",
          },
          {
            "BATCH_ID": 126,
            "BADGE_NUMBER": "100027",
            "CURRENCY_CODE": "USD",
            "ROLE_NAME": "xy7",
            "ROLE_START_DATE": "1-Aug-2020",
            "START_PERIOD": "Aug-FY21",
            "END_PERIOD": "Jan-FY21",
            "COMMENTS": "",
          }
         ],
 "metadata": null
}

我需要在 Oracle 数据库系统的关系表中插入与上述响应对应的 3 条记录,例如 Batch ID:124,125 和 126。如何解析和迭代这个 JSON 响应,以便能够将这些数据存储在关系表中?

4

0 回答 0