首页 > 解决方案 > DB2 过程调用文字错误

问题描述

我正在尝试使用 DBeaver 调用 DB2 过程。我使用的语法是这样的:

{ call db.procedure_name ('1234','2345','3456') }

然后我收到一条错误消息:

“过程调用的文字替换 prasing 失败...... SQL 文本失败......”

当我像这样调用相同的过程时:

{ call db.procedure_name (?,?,?) }

并手动插入它执行的参数。我对 DB2 很陌生,IBM 故障排除站点并没有多大帮助。你们能帮帮我吗?谢谢。

标签: db2procedure

解决方案


尝试call db.procedure_name (:1,:2,:3) 或替代地为每个参数创建全局变量

 create or replace variable p1 integer default 123;
 create or replace variable p2 decimal(5,2) default 123.45;
 create or replace variable p3 char(5);
 set p3 = '12345';
 call db.procedure_name (p1,p2,p3);

推荐阅读