我有一个JSON表,如何在PLSQL中使用此信息创建一个SQL表?
我正在与PLSQL合作,并且有此JSON表(第一个变量), 如何将这些数据插入SQL表中,我已经尝试了此数据,但是我已经忽略了错误:
CREATE TABLE Prueba_ins_json (
userId number(3),
id number(3),
title VARCHAR2(200),
body VARCHAR2(800)
);
DECLARE
json_prueba VARCHAR(5000) := '[
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
},
{
"userId": 1,
"id": 2,
"title": "qui est esse",
"body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
},
{
"userId": 1,
"id": 3,
"title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
"body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
},
{
"userId": 1,
"id": 4,
"title": "eum et est occaecati",
"body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
}
]';
BEGIN
INSERT INTO Prueba_ins_json
SELECT * FROM JSON_TABLE( json_prueba, '$[*]'
columns(
userId, id, title, body
)
);
END;
I'm working with PLSQL and I have this JSON table (first variable),
How can I insert this data into a sql table, i have already try this, but i have SQL statement ignored error:
CREATE TABLE Prueba_ins_json (
userId number(3),
id number(3),
title VARCHAR2(200),
body VARCHAR2(800)
);
DECLARE
json_prueba VARCHAR(5000) := '[
{
"userId": 1,
"id": 1,
"title": "sunt aut facere repellat provident occaecati excepturi optio reprehenderit",
"body": "quia et suscipit\nsuscipit recusandae consequuntur expedita et cum\nreprehenderit molestiae ut ut quas totam\nnostrum rerum est autem sunt rem eveniet architecto"
},
{
"userId": 1,
"id": 2,
"title": "qui est esse",
"body": "est rerum tempore vitae\nsequi sint nihil reprehenderit dolor beatae ea dolores neque\nfugiat blanditiis voluptate porro vel nihil molestiae ut reiciendis\nqui aperiam non debitis possimus qui neque nisi nulla"
},
{
"userId": 1,
"id": 3,
"title": "ea molestias quasi exercitationem repellat qui ipsa sit aut",
"body": "et iusto sed quo iure\nvoluptatem occaecati omnis eligendi aut ad\nvoluptatem doloribus vel accusantium quis pariatur\nmolestiae porro eius odio et labore et velit aut"
},
{
"userId": 1,
"id": 4,
"title": "eum et est occaecati",
"body": "ullam et saepe reiciendis voluptatem adipisci\nsit amet autem assumenda provident rerum culpa\nquis hic commodi nesciunt rem tenetur doloremque ipsam iure\nquis sunt voluptatem rerum illo velit"
}
]';
BEGIN
INSERT INTO Prueba_ins_json
SELECT * FROM JSON_TABLE( json_prueba, '$[*]'
columns(
userId, id, title, body
)
);
END;
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(1)
只需提供
PATH
(最好与数据类型)子句,例如demo
eding> edit (强>
您可以或
xmltable()
以及apex_json.to_xmltype()
,例如Just need to provide
PATH
(preferably along with data types) clause such asDemo
Edit (as you're using DB 11g) :
You can alternatively use
XMLTABLE()
along withAPEX_JSON.TO_XMLTYPE()
instead such as