在 TS 中使用 nodeOracledb 时出现错误 ORA-01008
ERROR ORA-01008 using nodeOracledb with TS
我的代码结果有一个问题,我尝试使用 TS 咨询一个脚本 ORACLE 和 nodejs 但我不知道为什么这个错误出现在我的控制台中我尝试了很多方法来修复这个错误,我可以'不要修复它们,我希望你能帮助我解决这个问题,请按照我的代码和我的错误截图进行操作。
控制器
async bipagem(req: Request, res: Response) {
try {
let credentials = super.openToken(req);
let { p_fil_filial, p_set_cdgo, p_mini_fab, p_codigo_barra } = req.query;
let info = await this.rep.bipagem(
p_fil_filial as string,
p_set_cdgo as string,
p_mini_fab as string,
p_codigo_barra as string,
credentials as string
);
res.json(info);
} catch (error) {
catchErr(res, error);
}
}
存储库
public async bipagem(
p_fil_filial: string,
p_set_cdgo: string,
p_mini_fab: string,
p_codigo_barra: string,
userPool: string
) {
let conn;
try {
conn = await connection(userPool);
const resultado = await conn.execute(
`DECLARE
result SYS_REFCURSOR;
BEGIN
-- Call the function
:result := brio.pck_fab0024.bipagem(p_fil_filial => :p_fil_filial,
p_set_cdgo => :p_set_cdgo,
p_mini_fab => :p_mini_fab,
p_codigo_barra => :p_codigo_barra,
p_msg => :p_msg);
END;`,
{
p_fil_filial,
p_set_cdgo,
p_mini_fab,
p_codigo_barra,
p_msg: { type: oracledb.STRING, dir: oracledb.BIND_OUT },
}
);
return resultado;
} catch (erro) {
console.log(erro);
} finally {
if (conn) conn.close();
}
}
截图错误
ORA-01008
表示“并非所有变量都绑定”。看起来您的 PL/SQL 块中有 6 个变量,但只有 5 个变量分配给了这些变量。 :result
未绑定。
我的代码结果有一个问题,我尝试使用 TS 咨询一个脚本 ORACLE 和 nodejs 但我不知道为什么这个错误出现在我的控制台中我尝试了很多方法来修复这个错误,我可以'不要修复它们,我希望你能帮助我解决这个问题,请按照我的代码和我的错误截图进行操作。
控制器
async bipagem(req: Request, res: Response) {
try {
let credentials = super.openToken(req);
let { p_fil_filial, p_set_cdgo, p_mini_fab, p_codigo_barra } = req.query;
let info = await this.rep.bipagem(
p_fil_filial as string,
p_set_cdgo as string,
p_mini_fab as string,
p_codigo_barra as string,
credentials as string
);
res.json(info);
} catch (error) {
catchErr(res, error);
}
}
存储库
public async bipagem(
p_fil_filial: string,
p_set_cdgo: string,
p_mini_fab: string,
p_codigo_barra: string,
userPool: string
) {
let conn;
try {
conn = await connection(userPool);
const resultado = await conn.execute(
`DECLARE
result SYS_REFCURSOR;
BEGIN
-- Call the function
:result := brio.pck_fab0024.bipagem(p_fil_filial => :p_fil_filial,
p_set_cdgo => :p_set_cdgo,
p_mini_fab => :p_mini_fab,
p_codigo_barra => :p_codigo_barra,
p_msg => :p_msg);
END;`,
{
p_fil_filial,
p_set_cdgo,
p_mini_fab,
p_codigo_barra,
p_msg: { type: oracledb.STRING, dir: oracledb.BIND_OUT },
}
);
return resultado;
} catch (erro) {
console.log(erro);
} finally {
if (conn) conn.close();
}
}
截图错误
ORA-01008
表示“并非所有变量都绑定”。看起来您的 PL/SQL 块中有 6 个变量,但只有 5 个变量分配给了这些变量。 :result
未绑定。