Я изучаю хранимые процедуры PL / SQL и обнаружил ошибку числового значения или значения.
Хранимая процедура:
CREATE OR REPLACE PROCEDURE TEST_PROC(
VARCHAROUT OUT VARCHAR
)AS
BEGIN
VARCHAROUT := 'test test test';
END;
Мой запрос:
DECLARE
OUTOUT VARCHAR(200);
BEGIN
TEST_PROC(OUTOUT);
:OUTOUT := OUTOUT;
END;
ОШИБКА:
Отчет об ошибке - ORA-06502: PL / SQL: ошибка числа или значения: слишком маленький буфер символьной строки ORA-06512: в строке 8 06502. 00000 - "PL / SQL: число илизначение error% s "* Причина: произошла ошибка арифметического, числового, строкового преобразования или преобразования.Например, эта ошибка возникает, если предпринята попытка присвоить значение NULL переменной, объявленной NOT NULL, или если сделана попытка присвоить целое число больше 99 переменной, объявленной NUMBER (2).* Действие: измените данные, как они обрабатываются или как они объявлены, чтобы значения не нарушали ограничений.