Экспертная система Delphi.int.ru

Сообщество программистов
Общение, помощь, обмен опытом

Логин:
Пароль:
Регистрация | Забыли пароль?

Delphi.int.ru Expert

Другие разделы портала

Переход к вопросу:

#   

Статистика за сегодня:  


Лучшие эксперты

Подробнее »



Вопрос # 4 672

/ вопрос открыт /

Приветствую вас, уважаемые эксперты!
Скажите пожалуйста, как можно выбрать данные из BLOB-поля (в BLOB поле данные в формате number).
Заранее благодарю и надеюсь на ответ

MStar Вопрос ожидает решения (принимаются ответы, доступен мини-форум)

Вопрос задала: MStar (статус: Посетитель)
Вопрос отправлен: 20 октября 2010, 13:05
Состояние вопроса: открыт, ответов: 0.


Мини-форум вопроса

Всего сообщений: 13; последнее сообщение — 27 октября 2010, 14:09; участников в обсуждении: 4.
Мережников Андрей

Мережников Андрей (статус: Абитуриент), 21 октября 2010, 06:06 [#1]:

какая БД?
MStar

MStar (статус: Посетитель), 21 октября 2010, 07:54 [#2]:

oracle
MStar

MStar (статус: Посетитель), 22 октября 2010, 13:43 [#3]:

Я делаю это так:
declare num_1 number;
begin
select blob_data into num_1 from some_table
where vid='8392';
dbms_output.put_line('Znachenie = '||num_1);
end;
Но возникает проблема несовместимости типов.
Видимо я ошибаюсь. Подскажите пожалуйста
Вадим К

Вадим К (статус: Академик), 22 октября 2010, 13:46 [#4]:

в строке dbms_output.put_line('Znachenie = '||num_1); что то не то с кавычками.
Галочка "подтверждения прочтения" - вселенское зло.
MStar

MStar (статус: Посетитель), 22 октября 2010, 15:26 [#5]:

вроде одинарные кавычки просто.Допустим я могу вообще убрать все и оставить только dbms_output.put_line(num_1); Это роли не играет.Ошибка от несовместимости типов. Ругается из-за того,что блоб прочитать не может (3 строка)
Вадим К

Вадим К (статус: Академик), 25 октября 2010, 10:32 [#6]:

на то он и блоб. потому что он хранит бинарные данные. а пытаетесь сравнить с строкой.
Галочка "подтверждения прочтения" - вселенское зло.
MStar

MStar (статус: Посетитель), 25 октября 2010, 11:47 [#7]:

тогда как выгрузить из блоба данные,если не так. как это обычно делается,я впервые сталкиваюсь,опыт у меня мал
MStar

MStar (статус: Посетитель), 25 октября 2010, 21:02 [#8]:

В Delphi есть компонент который предназначен для работы с блобами вроде? это случайно не ADODataSet?
Vic

Vic (статус: 1-ый класс), 26 октября 2010, 11:09 [#9]:

Может формат данных в Blob поле не number BLOB?
MStar

MStar (статус: Посетитель), 26 октября 2010, 14:49 [#10]:

хорошо,как из приложения тогда сделать это ,если надо обязательно DataSet иметь связанный с таблицей,а данные оттуда не могут выбираться,потому что там блоб поле
MStar

MStar (статус: Посетитель), 26 октября 2010, 14:51 [#11]:

тип такой как указан выше
Vic

Vic (статус: 1-ый класс), 27 октября 2010, 13:41 [#12]:

BLOB поле в Oracle хранит большой двоичный объект
имеет ограничения
в частности на них нельзя ссылаться в соединениях
а выбрать BLOB поле можно обычным образом с помощью запроса
SELECT .....
Vic

Vic (статус: 1-ый класс), 27 октября 2010, 14:09 [#13]:

Dataset лучше не подключать непосредственно к таблице
Создайте представление или функцию
отдельно запрашивайте данные из таблицы, не включая в запрос
BLOB поле.
второй запрос для данных, содержащихся в BLOB поле

Чтобы оставлять сообщения в мини-форумах, Вы должны авторизироваться на сайте.

Версия движка: 2.6+ (26.01.2011)
Текущее время: 22 февраля 2025, 11:30
Выполнено за 0.03 сек.