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

Вниз

Картинки в БД   Найти похожие ветки 

 
explorer   (2003-08-06 08:37) [0]

Мастера!
Имеется программа по тестированию знаний и ко многим вопросам прилагается картинка (около 700-800 картинок).
Подскажите, когда имеет смысл хранить графику в БД и какая еще есть альтернатива?


 
SPIRIT   (2003-08-06 09:28) [1]

альтернатива :) картинки на жестком, в базе имя файла, в TImage изображение...


 
Hooch   (2003-08-06 09:36) [2]

а проблема то в чем ?


 
s_ser   (2003-08-06 10:18) [3]

Альтнрнатива хранить картинки в BLOB полях.


 
Explorer   (2003-08-06 13:23) [4]

А где, все же лучше и правильней держать такое кол-во картинок?
Так же, важна скорость загрузки.


 
SPIRIT   (2003-08-06 13:45) [5]

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


 
Explorer   (2003-08-06 14:21) [6]

>SPIRIT
Одновременно отображается одна картинка.
Размер 30-50 Kb (*.jpg).
Суть такая (экзамены в ГИБДД): выбирается рендомом номер билета (1-40) , а в билете 20 вопросов и почти к каждому вопросу прилагается картинка.
Сколько картинок можно разместить в TImage и как сильно, это скажется на скорости работы приложения?


 
SPIRIT   (2003-08-06 15:06) [7]

я так понимаю структура базы такова :
таблица билеты

ID_билета
№Гаишный

таблица вопросы:
ID_вопроса
наимен_вопроса
Id_билета
имя картинки(если есть)

таблица ответы
ID_ответа
текст_ответа
ID_вопроса
правильный(булево)


или нет ?


 
explorer   (2003-08-07 06:24) [8]

Верно


 
Nikolay M.   (2003-08-07 09:57) [9]

Имхо, меньше геморроя будет, если хранить картинки в базе. По сети трафик все равно будет гоняться (если программа предназначается для работы в сети), может, операций с диском будет побольше. А вот как организовывать подкачку картинок на клиента, когда они валяются в папке на сервере - это еще вопрос, расшареная папка не всегда сгодится.
А когда картинки лежат в базе, подкачивай их только непосредственно перед показом вопроса, имхо тормозов будет не больше, чем если бы картинки лежали отдельно.


 
SPIRIT   (2003-08-07 09:57) [10]

а на форме DBGrid который отображает вопросы к выбранному (случ. образом) билету.
ну и все на DBGridOnCellClick:

With table_vopros do
begin
if fieldbyname("file_name").value<>null then
begin
Image.Picture.LoadFromFile(fieldbyname("file_name").AsString);
end
else
Image.Picture.LoadFromFile("photo.jpg");
end;

где photo.jpg- твоя фотка или фотка самого крутого ГАИшника в твоем городе


 
Nikolay M.   (2003-08-07 11:23) [11]


> Image.Picture.LoadFromFile(fieldbyname("file_name").AsString);

А fieldbyname("file_name").AsString - это картинка где? На клиенте? Или на сервере? Или в расшаренной папке? Или на сервере в другом отделении ГАИ?
Не думаешь, а советуешь, а человеку потом геморрой будет.


 
SPIRIT   (2003-08-07 12:56) [12]

храни в базе короче, Колян правду говорит, а я тебе для локал версии сказал извини...конечно хотя можно
Image.Picture.LoadFromFile("server name and path to papka s jpg"+"."+fieldbyname("file_name").AsString); но это тоже геморой на твою .. хм..

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


 
explorer   (2003-08-07 12:57) [13]

Так...с картинками, вроде бы разобрался, буду хранить все же на сервере.
а подскажите еще, как организовать выбор ответа на вопрос (в том же гриде), ТОЛЬКО с помощью клавиатуры (цифры от 1-5, а ВСЕ остальные клавиши отключить!)?


 
explorer   (2003-08-07 13:50) [14]

>SPIRIT
такими темпами мне не только друганам, но и ВСЕМ, на этом форуме за помощь, надо пивко ставить


 
Nikolay M.   (2003-08-07 14:00) [15]


> как организовать выбор ответа на вопрос (в том же гриде),
> ТОЛЬКО с помощью клавиатуры (цифры от 1-5, а ВСЕ остальные
> клавиши отключить!)?

У нас на экзамене в ГАИ на клавиатуре лежала такая пленка, которая от пыли клаву предохраняет, а в ней сделаны вырезы под клавишами 1-4 и пробелом :)))))

А вообще смотри OnKeyPress.


 
explorer   (2003-08-07 14:12) [16]

>Nikolay M.
Так мне тогда лучше им ручки с листочками раздать и самому не париться :)))

Буду смотреть


 
Nikolay M.   (2003-08-07 14:25) [17]


> Так мне тогда лучше им ручки с листочками раздать и самому
> не париться

Расход бумаги все-таки :)


 
SPIRIT   (2003-08-07 15:40) [18]

а сделай TTаbControl, 20 закладок (вопросов) на нем TRadiogroup
TabControlOnChange - вопрос меняется и усе...



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

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

Наверх





Память: 0.48 MB
Время: 0.012 c
14-1608
Marser
2003-08-13 00:15
2003.09.01
Именинники 13 августа


1-1381
Dimon
2003-08-16 19:27
2003.09.01
Синтаксис С++:(seen_eap |= PW_MESSAGE); Как это выгл. в Delphi??


14-1644
Best Guns
2003-08-12 14:18
2003.09.01
Куда делись все ветки?!


14-1596
SergP
2003-08-13 14:06
2003.09.01
Пишу прокси-сервер. Еще нужна Ваша помощь.


4-1708
seemann
2003-07-01 13:40
2003.09.01
Callback функция





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
Английский Французский Немецкий Итальянский Португальский Русский Испанский