Форум: "Базы";
Поиск по всему сайту: 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.73 MB
Время: 0.026 c
3-13039           Jaxtor                2003-05-16 14:24  2003.06.05  
Организация ссылочной целостности


7-13483           Shuric                2003-04-03 18:32  2003.06.05  
Не напомнит ли кто (про реестр)


1-13130           demonyator            2003-05-25 01:52  2003.06.05  
Длина строки символов в пикселях...


3-13037           DesWind               2003-05-16 15:27  2003.06.05  
Обновление DBLookupCombobx


1-13237           Андреев Павел         2003-05-23 13:27  2003.06.05  
Порядок удаления