#node.js #oracle #typescript #stored-procedures #typeorm
#node.js #Oracle #typescript #хранимые процедуры #typeorm
Вопрос:
Как использовать typeorm для вызова процедуры с входными и исходящими параметрами в Oracle? Я пытался сделать это так, но получил следующую ошибку:
Ошибка: NJS-044: объект привязки должен содержать один из следующих ключей: «dir», «type», «maxSize» или «val»
public async findOne(one: string) {
try {
const connection = await getConnection()
const sql: string = `
begin
procedure(:p0, :p1, :p2, :p3, :p4, :p5);
end;
`;
const result: any = await connection.query(sql,[
{ dir: oracledb.BIND_IN, type: oracledb.STRING, value: one },
{ dir: oracledb.BIND_OUT, type: oracledb.CURSOR },
{ dir: oracledb.BIND_OUT, type: oracledb.CURSOR },
{ dir: oracledb.BIND_OUT, type: oracledb.CURSOR },
{ dir: oracledb.BIND_OUT, type: oracledb.STRING },
{ dir: oracledb.BIND_OUT, type: oracledb.STRING },
]
);
return Promise.resolve()
} catch (reason) {
return Promise.reject(reason);
}
}
Комментарии:
1. Может помочь вам (найдите процедуру на странице), oracle.github.io/node-oracledb/doc/api.html#plsqlproc
2. @Sujitmohanty30 эта страница, которую вы отправили, в данном случае решила бы проблему с помощью драйвера oracledb, но я использую typeorm в базе данных.