Параметр Dynami c в knex при вызове хранимой процедуры - PullRequest
0 голосов
/ 27 марта 2020

Я новичок в knex и express.

Я хочу создать общую функцию, которая будет принимать динамический c параметр для вызова хранимой процедуры.

export const callStoredProcedure = async(spName: string, args: any) => {
  const trx = await promisify(dbConnection) as knex.Transaction;
  try {
    const result:any = await trx.raw(`CALL ${spName}(
      ${ typeof args === 'Array' ? args.map((o: any) => '?').join(",") : '?'});`, args)
      .then((result: any) => {
        const temp = JSON.parse(JSON.stringify(result[0]));
        temp.splice(temp.length - 1);

        return result[0].length ? temp : [] 
      })
    return { 
      error: null,
      data: result
    };
  } catch (error) {
    console.error(error)
    await trx.rollback(error);
    return { error };
  }
}

однако, Я получаю эту ошибку. enter image description here

Кроме того, есть ли у вас какие-либо советы относительно моей функции, если что-то не так.

Заранее спасибо!

...