Oracle - 与程序相关的查询

时间:2009-09-17 11:48:12

标签: oracle procedures

我在oracle中编写以下查询:

DBMS_OUTPUT .....'Ashish'

从tab_1

中选择col1到val1

DBMS_OUTPUT .....'Ubale'

当我运行此程序时,我得到输出为“Ashish”只为什么? 还有什么是v_val1变量

的价值

注意:该表不包含任何记录

2 个答案:

答案 0 :(得分:6)

由于表为空,“select into”语句将引发NO_DATA_FOUND异常。这就是你没有收到第二条消息的原因。 val1将具有与select之前相同的值 - 即,如果之前未分配值,则为null。

您不知道自己得到NO_DATA_FOUND异常这一事实表明您已经犯了PL / SQL开发人员所犯的最大错误之一:

EXCEPTION
    -- Never do this in real code!!!
   WHEN OTHERS THEN NULL;
END;

答案 1 :(得分:0)

你有错误吗?如果表中没有行。你可能会得到no_data_found异常。

顺便问一下,你的整个代码在哪里?