Форум программистов, компьютерный форум, киберфорум
Delphi: Базы данных
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.68/37: Рейтинг темы: голосов - 37, средняя оценка - 4.68
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
MS Access

Вывод вложения (картинки) в DBImage

31.01.2015, 18:36. Показов 8007. Ответов 8
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Всем привет! Помогите решить проблему. Нужно вывести вложение (картинку) из базы данных Access в DBImage. Привязываю DBOmage к DataSource, его у ADOTable -> ADOConnection. Таблицу выводит, а картинки никак. Постоянно ошибка Stream read Error. Читал, что Access как-то не так сохраняет, но по примерам сделать ничего не получилось. Та же ошибка.

P.S. Кода нет, только тот, что автоматически сгенерирован, поэтому не выкладываю.
0
Лучшие ответы (1)
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
31.01.2015, 18:36
Ответы с готовыми решениями:

Сохранение картинки в DBImage
Есть DBGrid с полями (фамилия,Имя,Фото-поле типа OLE) есть DBImage для отображения фото есть код загрузки картинки через кнопку картинку...

Картинки из в DBImage. Переход по записям
Вся программа в архиве! После запуска программы и нажатия на "Начать тест". Все вопросы считываются из БД. Проблема, в том, что при...

Изменение картинки в dbimage при смене строки в dbgrid
Как мне сделать в Delphi, чтобы при смени строки в dbgrid изменялась картинка в dbimage? База данных сделана в Paradox 7. Компоненты для...

8
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
31.01.2015, 18:48
Лучший ответ Сообщение было отмечено DimanRu как решение

Решение

Картинки, добавленные в базу, например, таким способом:
Delphi
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
procedure TForm1.Button10Click(Sender: TObject);
var
  jpg: TJPEGImage;
  bmp: TBitmap;
begin
  if OpenDialog1.Execute then
  begin
    jpg := TJPEGImage.Create;
    bmp := TBitmap.Create;
    try
      jpg.LoadFromFile(OpenDialog1.FileName);
      bmp.Assign(jpg);
      ADOQuery1.Edit;
      ADOQuery1.FieldByName('Picture').Assign(bmp);
      ADOQuery1.Post;
    finally
      jpg.Free;
      bmp.Free;
    end;
  end;
end;
прекрасно отображаются в DBImage.
1
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
31.01.2015, 19:08  [ТС]
Понял кажется, вот только туплю немного, что нужно в запросе написать в поле SQL? Кстати, каким должен быть тип поля? OLE?
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
31.01.2015, 19:15
Обычная выборка из таблицы, где есть поле 'Picture' типа Bloob.
Можно просто ADOQuery заменить на ADOTable.
Для выбора нужной записи можно подключиться к ДБГриду.
1
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
31.01.2015, 19:21  [ТС]
Сделал. Ошибка: Запрос UPDATE или DELETE не может включать поле, одновременно допускающее несколько значений.

Вложения в Access - это Bloob? Кстати, есть там другой способ хранить изображения, кроме вложений?
0
Модератор
 Аватар для FIL
3492 / 2614 / 742
Регистрация: 19.09.2012
Сообщений: 7,977
31.01.2015, 19:26
Цитата Сообщение от DimanRu Посмотреть сообщение
Вложения в Access - это Bloob?
В Access - "Поле объекта OLE".

Цитата Сообщение от DimanRu Посмотреть сообщение
Сделал.
Обычная выборка из таблицы это:
SQL
1
SELECT * FROM <Table>
1
 Аватар для DimanRu
721 / 712 / 168
Регистрация: 15.06.2011
Сообщений: 1,704
31.01.2015, 19:37  [ТС]
Выборку так и делал. С полем ошибся - использовал вложения. Изменил тип на нужный, теперь:

1) При записи возникает ошибка "Произошли ошибки во время выполнения многошаговой операции."
2) При сохранении изображения в БД через Access и попытки загрузки его в DBImage ошибка - "Bitmap image is not invalid "

Добавлено через 5 минут
Ура, вроде работает. Установил тип поля ftGraphic - все добавляется и просматривается. Огромное спасибо.
0
0 / 0 / 0
Регистрация: 10.02.2018
Сообщений: 43
04.03.2018, 09:25
DimanRu, FIL, а как сделать типо автоматической подгонки изображения к DBImage? А то загружаю картинку и как сделать что бы она вмещалась в заданный размер моего DBImage, а то видно только маленький кусочек
0
554 / 484 / 191
Регистрация: 11.12.2013
Сообщений: 2,507
04.03.2018, 09:48
Delphi
1
Dbimage.Stretch:=true;
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
04.03.2018, 09:48
Помогаю со студенческими работами здесь

Вывод изображения в DBImage
Здравствуйте,у меня проблема с выводом изображения bmp из таблицы access в dbimage с помощью ADO.когда в инспекторе объектов устанавливаю...

Вывод картинки из dbimage в word
Друзья, такой вопрос как вывести картинку из dbimage в word. Я разобрался с тем как выводить данные из dbedit в word, с использованием...

Ошибка при загрузке картинки в DBImage из БД
Не получается из БД Access загрузить картинку в компонент DBImage. Появляется ошибка &quot;Bitmap image is not valid&quot;. Также пробовал...

Загрузка картинки в Jpeg - затем из буфера в DBImage
Добрый вечер! Подскажите, пожалуйста... Перекопал очень много источников, не нашел в чем причина: Необходимо записать картинку в базу...

Firebird DBImage - вывод изображения в LazReport
Если делать по мурзилке http://wiki.freepascal.org/LazReport_Tutorial Now we have to tell the report you need to treat all data as...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
9
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru