Я получаю числовую или значение ошибки, когда я пытаюсь сделать следующее. Я пытаюсь назначить строку длины 40000 переменной clob, она должна позволить мне правильно?Числовая или значение ошибки при назначении строки более чем 32K переменной clob
Я петля, если пытаюсь добавить куски строки, тогда нет проблемы, но если я попытаюсь назначить «более 32-килобайтную строку» за один раз, появится ошибка.
У меня есть требование, когда мне нужно назначить строку 32K + процедуре с входным параметром clob.
SET SERVEROUTPUT ON
DECLARE
my_var CLOB;
BEGIN
my_var:=RPAD('*',40000,'*');
DBMS_OUTPUT.PUt_LINE(length(my_var));
EXCEPTION
WHEN OTHERS THEN
DBMS_OUTPUT.PUt_LINE(SQLCODE||' '||SQLERRM);
END;
Ошибка:
-6502 ORA-06502: PL/SQL: numeric or value error: character string buffer too small
Я никогда не знал, что это может сработать :) +1 – GurV
Привет, Спасибо за ответ. У меня есть одна процедура, которая записывает в clob-столбец с clob в качестве входного параметра. Поскольку существует предел 32K для строк в plsql. Сценарий оболочки Unix будет вызывать эту процедуру через sqllpus и указать строковый параметр, который может быть «более 32K». Подобно назначению этой большой строки в переменную clob, а затем передать эту переменную clob в процедуру. Является ли это возможным?? Пожалуйста помоги. – Srikant