sql >> Databáze >  >> RDS >> Oracle

Převést výstup dotazu Oracle na json (Oracle / NodeJS)

Proč používáte JSON_VALUE? Ovladač vrací nativní objekty JavaScriptu. Dotaz můžete napsat jako:

select department "department",
  ufh "ufh",
  libelle "libelle",
  nomhopital "nomhopital",
  typeservice "typeservice"
from Z_SOUPAP2CARTESITE 
where actif=1 

V dotazu výše se aliasy sloupců ve dvojitých uvozovkách používají k ovládání velikosti písmen.

Ve výchozím nastavení ovladač vrací pole polí (žádné klíče). Pokud chcete pole objektů, musíte předat objekt options do execute který změní outFormat . Viz tuto část dokumentu:https://oracle.github. io/node-oracledb/doc/api.html#queryoutputformats

Zde je příklad z dokumentu:

const result = await connection.execute(
  `SELECT department_id, department_name
   FROM departments
   WHERE manager_id < :id`,
  [110],  // bind value for :id
  { outFormat: oracledb.OUT_FORMAT_OBJECT }
);

console.log(result.rows);

Pokud chcete v Oracle používat funkce generování JSON, jako je JSON_VALUE, musíte se vyhnout dvojité analýze – stačí k řetězci přistupovat jako k JSON.

Další informace o vytváření REST API pomocí Node.js a Oracle Database najdete v této sérii:https://jsao.io/2018/03/creating-a-rest-api-with-node-js-and-oracle-database/




  1. Obnovit počet ID po odstranění tabulky ()

  2. MySQL LOAD DATA INFILE:funguje, ale nepředvídatelný terminátor řádku

  3. 5 úloh, které vyžadují Microsoft Access

  4. EasyPHP 16.1 autostart http &mysql