DB2 存储过程中的错误
Posted
技术标签:
【中文标题】DB2 存储过程中的错误【英文标题】:ERROR in DB2 stored procedure 【发布时间】:2013-02-07 10:11:22 【问题描述】:以下存储过程有什么问题?
CREATE PROCEDURE TEST
(IN mbr VARCHAR(30),
OUT sql_state CHAR(5)
)
DYNAMIC RESULT SETS 1 LANGUAGE SQL BEGIN DECLARE SQLSTATE CHAR(5);
DECLARE rs CURSOR WITH RETURN TO CLIENT FOR
SELECT
*
FROM
A.XYZ;
OPEN rs;
SET
sql_state = SQLSTATE;
END @;
【问题讨论】:
你得到什么错误信息? 这是 DB2 SQ 错误:SQLCODE: -104, SQLSTATE: 42601 这正常吗?END @;
??
【参考方案1】:
根据信息中心,SQL Code -104
表示您在某处有一个非法符号。在完整的错误消息中,它应该指出非法符号的位置。
我的猜测是您的语句终止符有些混淆,请查看this article。
【讨论】:
【参考方案2】:如果你在命令编辑器中运行它,那么你只需要
将您的默认终止字符从分号 (;) 更改为某事 否则
它会起作用的。
您可以在此处查看 IBM 技术说明:http://www-01.ibm.com/support/docview.wss?uid=swg21224723
【讨论】:
以上是关于DB2 存储过程中的错误的主要内容,如果未能解决你的问题,请参考以下文章