Главная страница
    Top.Mail.Ru    Яндекс.Метрика
Форум: "Базы";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Вниз

Отображение картинки из базы Access   Найти похожие ветки 

 
mouse_web   (2004-07-29 17:47) [0]

Подскажите как отобразить картинку...
Я создал в базе Access таблицу с картинками (поля OLE). Прямым копированием картинок наполнил таблицу.
Для просмотра в форме delphi использую элемент DBImage, но он не хочет показывать... Выдается ошибка "Bitmap image is not valid".
Подскажите, пожалуйста, может другой элемент надо использовать?


 
clickmaker ©   (2004-07-29 17:50) [1]


> Прямым копированием картинок наполнил таблицу

енто как?

и подозреваю, что поля OLE - это не совсем bitmap, а DBImage нужен именно он


 
Term   (2004-07-29 17:51) [2]


> Подскажите, пожалуйста, может другой элемент надо использовать?

или другой тип поля :)))


 
mouse_web   (2004-07-29 17:56) [3]


> или другой тип поля :)))


В Access при создании таблицы есть только поле "Поле объекта OLE" для рисунков, файлов и т.п. Поэтому использовать другой тип поля не получится.


 
Term   (2004-07-29 17:58) [4]

тебе так важно чтобы использовать именно аксес???
ваще и в дальнейшем гемороя ты с ним не оберешся, т.к. он примитивен, а разве там нет типа блоб???


 
mouse_web   (2004-07-29 18:02) [5]

А что можешь предложить?
Мне картинки хотелось бы хранить в базе данных.

А полей типа блоб там нет :(


 
Johnmen ©   (2004-07-29 18:20) [6]

Поля типа блоб там есть. Только называются по-другому...:)

По работе с блобами вопросы регулярны - ищи ответы на этой конфе.


 
sniknik ©   (2004-07-29 22:38) [7]

> т.к. он примитивен, а разве там нет типа блоб???
не знаеш элементарного (есть ли блоб), а уже судиш о примитивности?

кстати насчет "примитивности", базы аксес (jet) единственные (!!!!) из всего семейства OLEDB драйверов, кто поддерживает некоторый класс свойств (локальные индексы, поиск по индексам), наряду с методами сетевыми. такое вот "два в одном".

(меняется все быстро, может я уже и ошибаюсь... но вряд ли, сейчас все новое только на серверные технологии ориентируют)

> Подскажите как отобразить картинку...
проще всего отображать положенное из самой дельфевской программы,  так например

ADODataSet1.Edit;
TBlobField(ADODataSet1.FieldByName("ImField")).LoadFromFile("Name.Bmp");
ADODataSet1.Post;

так DBImage это поле будет "видеть" невзирая на то что оно вообщето OLE ;о).


 
mouse_web   (2004-07-30 10:36) [8]

извините за глупый вопрос, а этот пример на событие надо ставить? и каким образом привязать к DBImage?
или в DBImage стандартно прописать DataField и все?


 
Term   (2004-07-30 10:40) [9]


> > т.к. он примитивен, а разве там нет типа блоб???
> не знаеш элементарного (есть ли блоб), а уже судиш о примитивности?
>

я не сужу о примитивности, это был просто наводящий вопрос, скорее не вопрос а подсказка :)) в какую сторону нужно смотреть


 
Term   (2004-07-30 10:42) [10]


> наряду с методами сетевыми

чтото я не понял, я думал что аксес предназначен для локальных БД???


 
roottim   (2004-07-30 11:03) [11]

2Term   (30.07.04 10:42) [10]
так точно... может и нафайл-сервере стоять

но принцып работы с ней как с клиент-сервером


 
sniknik ©   (2004-07-30 11:06) [12]

> чтото я не понял, я думал что аксес предназначен для локальных БД???
база да, локальная (декларируется так), но jet (OLEDB провайдер) работает как будто с сетевой (все идет через некое ядро, которое условно можно называть сервером), сделано так потому как ADO именно под это и предназначалось. такие настройки стоят по умолчанию. но ест возможность также работать как с локальной базой (прямое открытие файлов, без перекачки и буферизации). посмотри хелп на метод seek, там в сносках прописано что ему нужно. дальше см. указаное там.


 
sniknik ©   (2004-07-30 11:10) [13]

> а этот пример на событие надо ставить?
ага, на событие нажатия кнопки например. ;о)

> или в DBImage стандартно прописать DataField и все?
для положеного так (и только bmp), да все.


 
Term   (2004-07-30 11:46) [14]


> но принцып работы с ней как с клиент-сервером



> все идет через некое ядро, которое условно можно называть
> сервером

понятно в общем, у меня это больше гипотетический интерес, так как сам в основном FB использую, но мне интересен тогда такой вопрос, на сервере лежит файл с расширением mdb, я подключаюсь, если в случае файл сервера тут понятно, а вот клиент-сервер я чтото не пойму как будет производиться скажем обработка транзакций??? вернее кто её будет производить???


 
sniknik ©   (2004-07-30 11:57) [15]

та машина с которой подключаешся, аналогично файл серверу, т.к. это "серверное ядро" будет на той же машине, а не там где база лежит. (вернее там оно тоже будет но незадействованое)

(может конечно эти ядра, на разных машинах, както вяжутся между собой и друг другу "помогают", но мне об этом ничего не известно, и не читал ничего подобного. т.е. это очень "дикое" предположение ;о))


 
Term   (2004-07-30 12:09) [16]

из этого следует что лучше его не использывать подобным образом, раз уж все досконально не известно, то могут а скорее и будут проблемы, спасибо за информацию


 
sniknik ©   (2004-07-30 12:37) [17]

а разве все бывает досконально известно? ;о)

но вообще правильно, лучше не использовать как серверную базу раз она декларируется как локальная.

кстати ситуация с транзакцией наверное будет аналогична если использовать файрбирд персонал но базу брать с соседней машины по расшареной папке. тоже ведь нехорошо? и даже то что на соседней тоже лежит dll от такой же персональной версии мало чем поможет. ;о)) но зато в случае с сервером это правильно а методов менять не нужно, перецепил конект и все.



Страницы: 1 вся ветка

Форум: "Базы";
Текущий архив: 2004.08.22;
Скачать: [xml.tar.bz2];

Наверх





Память: 0.49 MB
Время: 0.154 c
14-1091501193
Некрофил-затейник__
2004-08-03 06:46
2004.08.22
День программера?


1-1091775212
student__
2004-08-06 10:53
2004.08.22
подсчет секунд


1-1092070645
кш
2004-08-09 20:57
2004.08.22
мастера!!! помогите!!! как выполнить команду командной строки,


3-1090602268
Yaral
2004-07-23 21:04
2004.08.22
*.doc в blob


9-1083603086
Tsaiper
2004-05-03 20:51
2004.08.22
random збесился. что делать?





Afrikaans Albanian Arabic Armenian Azerbaijani Basque Belarusian Bulgarian Catalan Chinese (Simplified) Chinese (Traditional) Croatian Czech Danish Dutch English Estonian Filipino Finnish French
Galician Georgian German Greek Haitian Creole Hebrew Hindi Hungarian Icelandic Indonesian Irish Italian Japanese Korean Latvian Lithuanian Macedonian Malay Maltese Norwegian
Persian Polish Portuguese Romanian Russian Serbian Slovak Slovenian Spanish Swahili Swedish Thai Turkish Ukrainian Urdu Vietnamese Welsh Yiddish Bengali Bosnian
Cebuano Esperanto Gujarati Hausa Hmong Igbo Javanese Kannada Khmer Lao Latin Maori Marathi Mongolian Nepali Punjabi Somali Tamil Telugu Yoruba
Zulu
Английский Французский Немецкий Итальянский Португальский Русский Испанский