Форум: "Базы";
Поиск по всему сайту: www.delphimaster.net;
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];




Вниз

Изображения в БД MS Access и Delphi ADO 


Andrey02   (2003-05-17 17:46) [0]

1. В MS Access изображения и др. файлы сохраняются как Ole объекты. Остаются ли они файлами (jpg gif и т.д.) внутри базы??
2. Есть ли возможность читать/писать их в базу из программы???
Может кто знает КАК??

3. Если изображением будет пользоваться только программа.
То как ЭТО сделать? в Access написать что это поле Ole, а в Delphi использовать его как Blob? Как отобразить изображение к примеру .gif или .jpg, которое будет в blob-поле в программе?
Не будет ли Access ругаться на левые данные в ole поле? Для различия формата изображений (jpg gif pcx) создавать ли новое поле или обработку оставить какому-нибудь TImage ?



nv-vetal   (2003-05-17 19:15) [1]

В MS Access изображения и др. файлы сохраняются как Ole объекты. Остаются ли они файлами (jpg gif и т.д.) внутри базы?? - Чем-то точно остаются!


Есть ли возможность читать/писать их в базу из программы???
Может кто знает КАК?? - Image1.Picture.Assign(DBImage1.Picture);

Если изображением будет пользоваться только программа.
То как ЭТО сделать? в Access написать что это поле Ole ( ДА!), а в Delphi использовать его как Blob ( Никак!!!!)? Как отобразить изображение к примеру .gif или .jpg, которое будет в blob-поле в программе?
Не будет ли Access ругаться на левые данные в ole поле( Не проверял!!!!)? Для различия формата изображений (jpg gif pcx) создавать ли новое поле или обработку оставить какому-нибудь TImage ?

Можно также DBImage1.Picture.LoadFromFile



Desdechado   (2003-05-17 19:48) [2]

файл, как и содержимое БД - это всего лишь последовательность байтов.
зачем OLE, храни как блоб и пользуйся им из Дельфи как блобом.
qry.CreateBlobStream...
для конкретики заведи еще поле, в кот. пиши формат файла, поскольку TImage понимает их не очень много, но ты после чтения можешь сам его преобразовать в понимаемый им формат.



BlackTiger   (2003-05-17 20:54) [3]

Там есть фокус. Сам делал. Дело в том, что если КЛАДЕШЬ Access"ом, а выбираешь чем-то другим - есть проблемка небольшая. Ole-объект в Access"е - это всё что угодно, но заключенное в "обрамление". Если кладешь и выбираешь чем-то одним, то никаких проблем. Access"у до лампочки, что именно ты туда засовываешь (пишешь просто массив байтов). Правда, если ты засунешь туда картинку Дельфой, то только Дельфой ты ее оттуда корректно вытянишь.

А вообще - делал, и все там нормально.

2Desdechado
В Access"е OLE-field и есть BLOB.




Форум: "Базы";
Поиск по всему сайту: www.delphimaster.net;
Текущий архив: 2003.06.05;
Скачать: [xml.tar.bz2];




Наверх





Память: 0.72 MB
Время: 0.025 c
14-13474          panov                 2003-05-14 21:27  2003.06.05  
---|Ветка была без названия|---


6-13353           SuperIgor             2003-04-06 01:55  2003.06.05  
Internet Explorer 6


3-12994           Sherbacov             2003-05-15 14:17  2003.06.05  
ADO Table вопрос про ошибку!


1-13316           Rulya                 2003-05-21 21:21  2003.06.05  
Создание цифрового Вольтметра


14-13399          rosl                  2003-05-18 11:59  2003.06.05  
запустить приложение