Oracle
 sql >> база данни >  >> RDS >> Oracle

Експортирайте данни в JSON файл в Oracle 11g с помощта на PL/SQL

В тази статия давам пример за експортиране на данни в JSON файл в Oracle 11g с помощта на PL/SQL.

Следвайте тези стъпки, за да експортирате данни в JSON файл в Oracle 11g

  1. Първо, изтеглете помощния пакет Alexandria PL/SQL от GITHUB, като използвате следната връзка:Изтеглете пакета alexandria_plsql_utility.
  2. След като изтеглите zip файла, извлечете го и намерете JSON_UTIL_PKG в директорията "alexandria-plsql-utils-master\alexandria-plsql-utils-master\ora".
  3. Инсталирайте спецификацията и тялото на пакета JSON_UTIL_PKG във вашата схема
  4. След това изтеглете PL/SQL процедурата „WRITE_CLOB_TO_FILE“ от следната връзка:Изтеглете Write_Clob_To_File.
  5. Инсталирайте тази процедура и във вашата схема.

Сега можете да генерирате JSON файла от таблицата на Oracle с помощта на PL/SQL, както е показано в примера по-долу.

Пример на Oracle 11g SQL към JSON

В следващия пример ще получим данните в CLOB променлива с помощта на JSON_UTIL_PKG.SQL_TO_JSON функция и след това ще запишем, че CLOB има JSON данни във FILE, като използваме процедура WRITE_CLOB_TO_FILE . Ще предадем три параметъра на процедурата WRITE_CLOB_TO_FILE и те са както следва:име на файл, име на обект в директория и променливата CLOB.

DECLARE
c CLOB;
BEGIN
SELECT json_util_pkg.sql_to_json('select EMPNO, ENAME, JOB, MGR, HIREDATE, SAL, COMM, DEPTNO from emp2')
INTO c
FROM DUAL;

WRITE_CLOB_TO_FILE ('emp.json', 'JSON_DIR', c);
END;
/

Сега можете да проверите местоположението на обекта на директорията JSON_DIR и ще намерите JSON файла, както е показано в примерния изход по-долу:

{"ROWSET":[{"EMPNO":7369,"ENAME":"SMITH","JOB":"CLERK","MGR":7902,"HIREDATE":"17-DEC-80","SAL":800,"COMM":null,"DEPTNO":21},{"EMPNO":7499,"ENAME":"ALLEN","JOB":"SALESMAN","MGR":7698,"HIREDATE":"20-FEB-81","SAL":1600,"COMM":300,"DEPTNO":30},{"EMPNO":7521,"ENAME":"WARD","JOB":"SALESMAN","MGR":7698,"HIREDATE":"22-FEB-81","SAL":1250,"COMM":500,"DEPTNO":30},{"EMPNO":7566,"ENAME":"JONES","JOB":"MANAGER","MGR":7839,"HIREDATE":"04-FEB-81","SAL":2975,"COMM":null,"DEPTNO":20},{"EMPNO":7654,"ENAME":"MARTIN","JOB":"SALESMAN","MGR":7698,"HIREDATE":"28-SEP-81","SAL":1250,"COMM":1400,"DEPTNO":30},{"EMPNO":7698,"ENAME":"BLAKE","JOB":"MANAGER","MGR":7839,"HIREDATE":"05-JAN-81","SAL":2850,"COMM":null,"DEPTNO":30},{"EMPNO":7782,"ENAME":"CLARK","JOB":"MANAGER","MGR":7839,"HIREDATE":"06-SEP-81","SAL":2450,"COMM":null,"DEPTNO":10},{"EMPNO":7788,"ENAME":"SCOTT","JOB":"ANALYST","MGR":7566,"HIREDATE":"19-APR-87","SAL":3000,"COMM":null,"DEPTNO":20},{"EMPNO":7839,"ENAME":"KING","JOB":"PRESIDENT","MGR":null,"HIREDATE":"17-NOV-81","SAL":5000,"COMM":null,"DEPTNO":10},{"EMPNO":7844,"ENAME":"TURNER","JOB":"SALESMAN","MGR":7698,"HIREDATE":"09-AUG-81","SAL":1500,"COMM":0,"DEPTNO":30},{"EMPNO":7876,"ENAME":"ADAMS","JOB":"CLERK","MGR":7788,"HIREDATE":"23-MAY-87","SAL":1100,"COMM":null,"DEPTNO":20},{"EMPNO":7900,"ENAME":"JAMES","JOB":"CLERK","MGR":7698,"HIREDATE":"12-MAR-81","SAL":950,"COMM":null,"DEPTNO":30},{"EMPNO":7902,"ENAME":"FORD","JOB":"ANALYST","MGR":7566,"HIREDATE":"12-MAR-81","SAL":3000,"COMM":null,"DEPTNO":20},{"EMPNO":7934,"ENAME":"MILLER","JOB":"CLERK","MGR":7782,"HIREDATE":"23-JAN-82","SAL":1300,"COMM":null,"DEPTNO":10}]}

Вижте също:

  • Експортирайте данни в Excel с помощта на PLSQL
  • Експортиране на данни в CSV с помощта на PL/SQL
  1. Database
  2.   
  3. Mysql
  4.   
  5. Oracle
  6.   
  7. Sqlserver
  8.   
  9. PostgreSQL
  10.   
  11. Access
  12.   
  13. SQLite
  14.   
  15. MariaDB
  1. Филтър за месец и година на CriteriaQuery

  2. Oracle намери ограничение

  3. Изберете от таблицата, ако записът е намерен в друга таблица

  4. Какви са таблиците BIN$... в таблицата ALL_TAB_COLUMNS на Oracle?

  5. Тип данни на Oracle:Трябва ли да използвам VARCHAR2 или CHAR