Могу ли я отправить JSON на Oracle Вставку, как я делаю с MySQL, используя Node? - PullRequest
0 голосов
/ 10 марта 2020

У меня есть следующий код, который я использовал для вставки в MySQL (MariaDB) ....

import mysql from "mysql";
const INSERT_QUERY = "INSERT INTO CALL_DATE SET ? ON DUPLICATE KEY UPDATE MADE_DATE = VALUES(MADE_DATE)";

insertCallDate(callId, server, date){
    const callDate = {
        ...
    };
    return connection.query(
        INSERT_QUERY,
        callDate
    );
}

Когда я перехожу к oracleDB, я хотел бы сделать что-то подобное снова, но ближайший Я могу найти что-то вроде ...

const INSERT_QUERY = "INSERT INTO CALL_DATE SET (ID, ...) values (:1, ...)";

Есть ли что-то похожее на MySQL, чтобы я мог передать предварительно структурированный JSON объект Oracle? В частности, с использованием библиотеки Node JS oracledb?

1 Ответ

1 голос
/ 11 марта 2020

В документации node-oracledb есть короткий раздел по JSON. Чтобы процитировать пример:

const data = { "userId": 1, "userName": "Chris", "location": "Australia" };
const s = JSON.stringify(data);  // change JavaScript value to a JSON string

const result = await connection.execute(
  `INSERT INTO j_purchaseorder (po_document) VALUES (:bv)`,
  [s]  // bind the JSON string
);

Есть также два запускаемых примера: select json. js и selectjsonblob. js.

Большая часть технологии JSON в Oracle не указана c для node-oracledb, поэтому руководство Oracle База данных JSON Руководство разработчика является хорошим ресурсом.

Вас может заинтересовать SODA, которая также документирована для node-oracledb и имеет пример soda1. js. Это позволяет хранить «документы» в БД. Эти документы могут быть любыми, но по умолчанию используются JSON документы.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...