Oracle Trigger,Queries和If语句

时间:2014-12-08 12:37:43

标签: oracle triggers

经过一些阅读后,我发现你(出于某种原因)无法在if语句中运行简单的查询语句。我想要做的是创建一个查询并检查它是否返回null或不为null:

queryResult INT;
SELECT * INTO queryResult FROM Table WHERE Condition;
IF(queryResult IS NOT NULL) THEN
    ...
END IF;

显然Oracle并不接受将整个查询输入到int中,所以有没有办法定义一个通用游标,所以我不必为每个查询定义一个特定的查询(我想测试一下)大约10个这样的查询)?

1 个答案:

答案 0 :(得分:1)

按NULL表示select不会返回任何行,在这种情况下你可以使用count函数来评估

queryResult INT;
SELECT count(*) INTO queryResult FROM Table WHERE Condition;
IF(queryResult >0) THEN
...
END IF;