oracle – pl / sql – 是否有空行的NVL()
发布时间:2021-01-08 21:54:45  所属栏目:百科  来源:网络整理 
            导读:有了这个, set serveroutput on size 900000;DECLARE test VARCHAR(255):=0;BEGIN SELECT id INTO test FROM sku WHERE id = 1515; dbms_output.put_line('Result:' || test);END; 我有错误 "no data found" 当数据库中不存在ID时. 我怎么能在这里使用类似nv
                
                
                
            | 
                         有了这个, set serveroutput on size 900000;
DECLARE
  test VARCHAR(255):=0;
BEGIN
    SELECT id INTO test FROM sku WHERE id = 1515;
    dbms_output.put_line('Result:' || test);
END; 
 我有错误 "no data found" 当数据库中不存在ID时. 我怎么能在这里使用类似nvl()的东西,所以我可以得到一个默认值而不是得到一个错误? 解决方法如果合适,您可以将此作为更常见的NO_DATA_FOUND异常处理的替代方法:DECLARE
  test VARCHAR(255):=0;
BEGIN
    SELECT NVL(MAX(id),'default') INTO test FROM sku WHERE id = 1515;
    dbms_output.put_line('Result:' || test);
END; 
 通过使用MAX(ID),您肯定会返回一行,当没有数据时将返回NULL;然后以通常的方式使用NVL. (编辑:52站长网) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!  | 
                  

