Oracle 具有聚合的null计数
在Oracle中,我有一个查询表并将两个字段写入变量的存储过程。问题是Oracle将在不返回任何内容时抛出错误。这是我的密码Oracle 具有聚合的null计数,oracle,Oracle,在Oracle中,我有一个查询表并将两个字段写入变量的存储过程。问题是Oracle将在不返回任何内容时抛出错误。这是我的密码 SELECT COUNT (empno),Name INTO empcount,empname FROM lv_request_header WHERE empno = emp AND request_id = rqid GROUP BY empname 使用带有计数的NVL仍然会引发错误 第1行错误:ORA-20000:lv
SELECT COUNT (empno),Name
INTO empcount,empname
FROM lv_request_header
WHERE empno = emp
AND request_id = rqid
GROUP BY empname
使用带有计数的NVL仍然会引发错误
第1行错误:ORA-20000:lv_请求_头未找到ORA-06512:第13行错误表明问题在于表lv_请求_头不存在或过程的所有者无权访问它。如果过程所有者以外的用户拥有此表,则可能需要使用架构名称限定表名,或者为对象创建同义词 一般来说,如果你想处理一个选择。。。在返回0行的语句中,您需要指定在这种情况下两个局部变量的值。如果希望empcount为0,empname为NULL,可以执行以下操作
BEGIN
SELECT COUNT (empno),Name
INTO empcount,empname
FROM lv_request_header
WHERE empno = emp
AND request_id = rqid
GROUP BY empname
EXCEPTION
WHEN no_data_found
THEN
empcount := 0;
empname := NULL;
END;
如何将空白记录放入变量?第1行错误:ORA-20000:lv_请求_头未找到ORA-06512:第13I行有更多代码出现在select into查询之后。我的问题是,异常处理是在整个过程的底部进行的,还是我的剩余代码会在执行处理之后进行?@user1345246-异常处理程序是BEGIN的一部分。。。端块。因此,假设您将SELECT语句包装在它自己的PL/SQL块中,执行将继续执行下一行代码,正如我在这里所做的那样。