检查 SYS_REFCURSOR 是否为空

Check SYS_REFCURSOR is null or not

我是第一次使用存储过程,我有一个存储过程,它会进行一些检查以将 SYS_REFCURSOR 设置为 NULL。

create or replace PROCEDURE "proc"
(
    tableRec OUT SYS_REFCURSOR
)
.
.
BEGIN
.
.
    EXCEPTION
        WHEN NO_DATA_FOUND THEN
        tableRec := NULL;
    END;

一旦这是 运行,我需要在 运行 另一个 if 循环之前检查 tableRec 是否为空。 我试过如下

BEGIN
    if tableRec = NULL then

但这不起作用。在其他地方,可以通过写

来检查一个数字是否为 itemCount,是否为 0
if itemCount = 0 then

任何人都可以解释如何为 SYS_REFCURSOR 实现这一点,以及为什么它适用于数字而不适用于它。 这不是关于检查 SYS_REFCURSOR 是否为空(因为我在互联网上找到了有关它的信息),而是利用它设置为 NULL

的事实

您需要使用 IS NULL 来检查某些内容是否为空?

create or replace PROCEDURE proc (tableRec OUT SYS_REFCURSOR)
as
BEGIN

if tableRec is NULL then
    null;
end if;

END;
/

DEMO