Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Oracle Новый топик    Ответить
 Непонятна работа с CLOB  [new]
Postalll
Guest
Проблема в следующем: работаю с формсами; пытаюсь сохранить некий текст в поле CLOB - успешно получается. Но как только я пытаюсь сохранить пустое значение (без текста) - то после сохранения при отображении значения поля мне выдается набор символов "#########". Откуда они берутся??? При просмотре содержимого этого поля в Навигаторе та пусто!!!
Заранее благодарен за ответы!
31 окт 08, 12:03    [6380843]     Ответить | Цитировать Сообщить модератору
 Re: Непонятна работа с CLOB  [new]
pravednik
Member

Откуда: Jacksonville, FL
Сообщений: 16268
посмотрите, как у вас формс выводит NULL-ы
31 окт 08, 12:04    [6380859]     Ответить | Цитировать Сообщить модератору
 Re: Непонятна работа с CLOB  [new]
Postalll
Guest
По идее NULL формсы выводят как пустое поле - так всегда было. Да даже не в этом проблема, а в том, что при обработке значения этого поля там все равно содержится НЕнулевое значение, хотя я туда записываю NULL.
31 окт 08, 12:26    [6381102]     Ответить | Цитировать Сообщить модератору
 Re: Непонятна работа с CLOB  [new]
Postalll
Guest
Сформулирую вопрос по-другому: как проверить, что в поле CLOB записано нулевое значение?

if CLOB is NULL - не работает
if Length(CLOB) != 0 - не работает (Length(CLOB) всегда равно 32000)
31 окт 08, 12:48    [6381322]     Ответить | Цитировать Сообщить модератору
 Re: Непонятна работа с CLOB  [new]
den-den
Guest
кажется, pravednik писал уже, можно продолжить:

create table xxtr.tt (f_t clob);

--insert into xxtr.tt values ('asdas dasdada');
insert into xxtr.tt values ('');

create or replace procedure xxtr.test_clob as
x clob;
begin select f_t
into x
from xxtr.tt;

if x is null then
dbms_output.put_line('null!');
else
dbms_output.put_line('not null!');
end if;
end;
31 окт 08, 12:54    [6381385]     Ответить | Цитировать Сообщить модератору
Все форумы / Oracle Ответить