Вопрос

Я пишу следующие запросы в Oracle:

DBMS_OUTPUT ..... "Ashish"

Выберите col1 в val1 из tab_1

DBMS_OUTPUT ..... "Ubale"

когда я запускаю эту процедуру, я получаю вывод как " Ashish " только почему? также, что будет значением переменной v_val1

Примечание: таблица не содержит записей

Это было полезно?

Решение

Поскольку таблица пуста, " выберите в " инструкция вызовет исключение NO_DATA_FOUND. Вот почему вы не получите второе сообщение. val1 будет иметь то же значение, что и до select - то есть null, если вы ранее не присваивали значение.

Тот факт, что вы не знаете, что у вас есть исключение NO_DATA_FOUND, предполагает, что вы допустили одну из самых больших ошибок, которые когда-либо делали разработчики PL / SQL:

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

Другие советы

Вы получили ошибку? Если в таблице нет строк. Вы можете получить исключение no_data_found.

Кстати, где весь ваш код?

Лицензировано под: CC-BY-SA с атрибуция
Не связан с StackOverflow
scroll top