1
我有一个存储过程,我无法编译。没有编译'Set'的存储过程
CREATE PROCEDURE FINGOODSCH(IN STRDATE DATE,
IN prodln Char(5))
LANGUAGE SQL
RESULT SETS 1
SET OPTION DBGVIEW =*SOURCE
BEGIN
Declare IN_DATE NUMERIC(7,0);
SET IN_DATE = 0;
/* SET IN_DATE = (DECIMAL(CHAR(SUBSTR(CHAR(STRDATE),1,4); */
/* SUBSTR(CHAR(STRDATE),6,2) CONCAT */
/* SUBSTR(CHAR(STRDATE),9,2))) - 19000000) ; */
Declare FinGoodSCH Cursor for
Select TRIM(ORDNO) as OrderNumber,
('20' || SUBSTR(CHAR(ODUDT),2,2) || '-' ||
SUBSTR(CHAR(ODUDT),4,2) || '-' ||
SUBSTR(CHAR(ODUDT),6,2)) as OrderDueDate,
TRIM(FITEM) as ModelNumber,
TRIM(DPTNO) as ProductionLine
From ORMAST
Where
DPTNO = prodln
OPEN FinGoodSCH ;
END
问题是声明'SET IN_DATE = 0; (我知道我可以使用默认设置为0,但那不是我正在寻找的)'。如果我删除这条语句,它会编译。编译错误是: SQL0104 30 3位置33令牌FINGOODSCH无效。有效的
令牌:GLOBAL。
而且,我试着用十进制声明,但没有奏效
它的工作..谢谢吨查尔斯..保存我的一天。我是SP的新手,并且完全陷入其中......谢谢!!!!! –