Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
Вниззаполнение CLOB поля в oracle 8 Найти похожие ветки
← →
Zabludshiy (2004-08-03 13:22) [0]Всем доброго времени!
Помогите разобраться. Надо записать в CLOB текст > 100KB. В oracle 9 использовал TO_CLOB(), и писал в CLOB-поле переменную типа varchar2. В восьмерке так не получается. Пробую разобраться с DBMS_LOB. Нормально описано как скопировать один LOB в другой, а вот как длинный текст туда загнать понять не могу.
Спасибо.
← →
roottim © (2004-08-03 14:49) [1]>В oracle 9 использовал TO_CLOB(), и писал в CLOB-поле переменную типа varchar2
не понял в чем конкретно проблемаSQL> CREATE TABLE ttt (id INT, NAME clob)
2 /
Таблица создана.
SQL>
SQL> DECLARE
2 vs VARCHAR2(4000) := "";
3 BEGIN
4 FOR i IN 1..2000 LOOP vs := vs||"WW"; END LOOP;
5 INSERT INTO ttt VALUES(7, vs);
6 COMMIT;
7 END;
8 /
Процедура PL/SQL успешно завершена.
SQL>
SQL> SELECT * FROM ttt
2 /
ID
----------
NAME
--------------------------------------------------------------------------------
7
WWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWWW
← →
Zabludshiy (2004-08-03 15:02) [2]Проблема в том, что мне нужно внести текст размером больше чем максимальный размер varchar2. В oracle 9 varchar2 имеет макс. размер 2Гб, тогда как в oracle 8 - 4000.
← →
Reindeer Moss Eater © (2004-08-03 15:05) [3]varchar2 имеет один и тот же размер и в восьмерке и в девятке.
Если это поле таблицы, то 4000
Если это переменная PL/SQL блока, то это 32767.
← →
Reindeer Moss Eater © (2004-08-03 15:06) [4]И попутный вопрос:
зачем использовать varchar2 если работать надо с clob?
← →
Zabludshiy (2004-08-03 15:22) [5]Сори, запутался немного.
В 9-ке біло так:declare var1 clob;
begin
var1:="Тут большоой текст (размером промерно 200 КБ)
";
Insert into table (id, Clob_field, ) Values (
84, TO_CLOB(var1));
end;
В восьмёрке начала ругаться на TO_CLOB, мол нет такого у него, а потом на размер литерала присваемого var1, если он был больше 4000 (или 32767, точно не помню).
← →
Reindeer Moss Eater © (2004-08-03 15:25) [6]А зачем TO_CLOB?
Если есть dbms_lob.write, writeappend ?
← →
Zabludshiy (2004-08-03 17:47) [7]Всем спасибо.
Страницы: 1 вся ветка
Форум: "Базы";
Текущий архив: 2004.08.29;
Скачать: [xml.tar.bz2];
Память: 0.46 MB
Время: 0.033 c