Russian Qt Forum
Октябрь 01, 2024, 20:22 *
Добро пожаловать, Гость. Пожалуйста, войдите или зарегистрируйтесь.
Вам не пришло письмо с кодом активации?

Войти
 
  Начало   Форум  WIKI (Вики)FAQ Помощь Поиск Войти Регистрация  

Страниц: [1]   Вниз
  Печать  
Автор Тема: БД и изображения...  (Прочитано 2601 раз)
crossly
Гость
« : Июнь 15, 2009, 11:53 »

день добрый.... помогите советом.... в таблице изображения.... размером этак по 3 - 3,5 Мб (штук этак 10)... мне нужно их отображать по порядку...
как лучше сделать.... выбрать все одним селектом в QSqlQuery... и дальше работать с ним или же заправшивать по одной картинке из БД.... ??
Записан
break
Гипер активный житель
*****
Offline Offline

Сообщений: 846


Просмотр профиля
« Ответ #1 : Июнь 16, 2009, 01:22 »

Если штук 10 - то пофиг,
А вот если их потом будет 100 а потом 1000, и каждое по 3,5 Мб - то не пофиг, вообще обязательно такие задачи в БД надо тестировать на рельных данных - то есть как будет в программе использоваться в реальности.

Я вообще в случаях когда надо хранить большие объемы информации храню в специальном каталоге - а не в БД. Получается внешняя часть базы - для больших изображений, отчетов в формате rtf и др. Конечно можно все это и в блоб поля пихать - но не вижу никакого смысла. Так как если с операцией например связан документ и пользователь хочет просматривать его в офисной программе - то все равно прийдется его распаковывать во временную папку и т.д. Лучше уж грамотно сетевую папку настроить...

Записан
White Owl
Гость
« Ответ #2 : Июнь 16, 2009, 20:51 »

Я вообще в случаях когда надо хранить большие объемы информации храню в специальном каталоге - а не в БД. ...
Это не очень хороший подход. Грамотно настроенная сетевая папка не решает проблем с юзерами вне локальной сети, и уж тем более не уменьшает нагрузку на сеть.
Намного лучше хранить файлы в базе, в табличке похожей на FS. Что-то в духе: (filename vachar(64), last_updated datetime, data blob). При обращении к файлу проверять есть ли этот файл уже в локальном каталоге (кеше). Если есть, сравнить дату модификации с полем last_updated. Ну и если надо - выкачиваешь файл из базы и кладешь в локальный кеш. А потом уже работаешь всегда с локальными файлами.
Записан
Страниц: [1]   Вверх
  Печать  
 
Перейти в:  


Страница сгенерирована за 0.17 секунд. Запросов: 22.