Главная страница
Top.Mail.Ru    Яндекс.Метрика
Текущий архив: 2003.09.01;
Скачать: CL | DM;

Вниз

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

 
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;
Скачать: CL | DM;

Наверх




Память: 0.51 MB
Время: 0.03 c
3-1278
andrey__
2003-08-11 11:59
2003.09.01
Уьеньшить объём log - файла


3-1295
Olivka
2003-08-08 11:59
2003.09.01
Какой-то был компонент , позволяющий делать запросы к датасетам?


1-1387
Spawn
2003-08-16 10:44
2003.09.01
Опять Word


4-1727
tipman
2003-06-28 20:42
2003.09.01
Где взять hProcess для функции WaitForInputIdle


3-1319
styopkin
2003-08-08 12:14
2003.09.01
MIDAS, DCOM