【发布时间】:2013-02-20 10:39:08
【问题描述】:
考虑以下过程:
CREATE PROCEDURE XYZ.ABC
(
IN V1 DATE,
IN V2 VARCHAR(50) DEFAULT NULL
)
SPECIFIC XYZ.ABC
RESULT SETS 1
MODIFIES SQL DATA
NOT DETERMINISTIC
NULL CALL
LANGUAGE SQL EXTERNAL ACTION
INHERIT SPECIAL REGISTERS
BEGIN
DECLARE temp_cursor CURSOR WITH HOLD WITH RETURN TO CALLER
FOR
select
//long query
where ((V2 is not null AND V2='abc') OR (V2 is null));
OPEN temp_cursor;
END
;
这给了我错误
在“V2 VARCHAR(50)”之后发现了一个意外的标记“DEFAULT NULL”。预期的标记可能包括:“”。第 4 行。 SQLSTATE=42601
我不明白为什么 DEFAULT NULL 在这种情况下不起作用。
【问题讨论】:
-
并非所有 DB2 版本/平台都支持
default。您确定您正在查看您的版本的正确文档吗? -
是的。好像是版本问题。 DB2 v9.5 不支持默认关键字。
标签: database stored-procedures db2