要确定表或表变量是否为空,可以使用谓词 IS_EMPTY:
IS_EMPTY( | ) IS_EMPTY 将 true,否则返回 false。
您可以在 IF-语句或 WHILE-循环等条件中使用 IS_EMPTY。例如,在下一示例中 IS_EMPTY 用于 IF-statement:
CREATE PROCEDURE PROC_IS_EMPTY ( IN tabvar TABLE(ID INTEGER),
OUT outtab TABLE(ID INTEGER)
)
AS
BEGIN
IF IS_EMPTY(:tabvar) THEN
RETURN;
END IF;
CALL INTERNAL_LOGIC (:tabvar, outtab);
END;
此外,您还可以将其用于标量变量分配。
备注请注意,无法在 SQL 查询或表达式中使用 IS_EMPTY。