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

Вниз

Хранение нескольких фотографий   Найти похожие ветки 

 
Дмитрий_177   (2006-02-27 19:38) [0]

Я новичек в программировании БД. Вот я создал таблицу Paradox7 в программе Database Desktop. Делаю я как бы БД людей, т.е. ФИО, дата рождения и т.д. и несколько его фотографий... Но мне нужно чтобы по какомуто человеку можно было хранить неограниченное колличество фотографий... как так можно осуществить?


 
Anatoly Podgoretsky ©   (2006-02-27 19:39) [1]

Master/Detail


 
Дмитрий_177   (2006-02-27 19:46) [2]

а тип поля Graphic поставить?


 
Anatoly Podgoretsky ©   (2006-02-27 19:51) [3]

Нужно два поля, требуется еще и связь с мастером.


 
Desdechado ©   (2006-02-27 19:59) [4]

почитай про ПРОЕКТИРОВАНИЕ структуры БД, а потом садись программировать


 
Дмитрий_177   (2006-02-27 20:04) [5]

да я еще пока не программирую...))) таблицу только создаю )))


 
LexxX ©   (2006-02-27 21:25) [6]

Удобнее фото хранить в папке, а в БД хранить пути и имена к фоткам.


 
аматор ©   (2006-02-27 21:29) [7]

Anatoly Podgoretsky ©   (27.02.06 19:51) [3]
А может краше 3 поля (авто, связь, фото). Хотя это мелко.


 
Virgo_Style ©   (2006-02-27 22:26) [8]

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


 
Дмитрий_177   (2006-02-28 01:04) [9]

Virgo_Style да у меня не строгая... это я для себя делаю... а как это понять  "многие ко многим"? в книге есть такое?


 
Джо ©   (2006-02-28 01:06) [10]

>
> [9] Дмитрий_177   (28.02.06 01:04)
> а как это понять  "многие ко многим"? в книге есть такое?

Да, в любой книге о реляционных СУБД есть такое :)


 
Германн ©   (2006-02-28 01:58) [11]


> Дмитрий_177   (28.02.06 01:04) [9]
>
> Virgo_Style да у меня не строгая... это я для себя делаю.
> .. а как это понять  "многие ко многим"? в книге есть такое?
>

Насчёт книг Джо ©   (28.02.06 01:06) [10] уже ответил.

Но ты не точно сформулировал вопрос. А именно, ты написАл, что нужно
> и несколько его фотографий... Но мне нужно чтобы по какомуто
> человеку можно было хранить неограниченное колличество фотографий.
> .. как так можно осуществить?

Но не написал какие это фотографии. А они могут быть и "групповые"!


 
Дмитрий_177   (2006-02-28 18:13) [12]

Германн, обычные ))))))))))) без груповых сцен )))))))))


 
Кира   (2006-03-01 14:06) [13]

Где найти инсталяторы для програм с базами даных Delphi?
Зарание спасибо!


 
msguns ©   (2006-03-01 15:38) [14]

>Кира   (01.03.06 14:06) [13]
>Где найти инсталяторы для програм с базами даных Delphi?

Дельфи это вовсе не базы данных.
Для того, чтобы работать с БД надо:
1. Поставить задачу и вывести техническое задание
2. Выбрать тип БД (например, общедоступный акцесс, для которого в большинстве случаев ничего не надо инсталлировать для полноценной работы). Если БД требует сервера или "движка", то позаботиться о его инсталляции,- в дельфи есть инструмент работы с большинством промышлкееых серверов (т.н. "клиент"), но самих серверов нет, конечно. Их надо инсталлировать. Читать литературу по серверу и "сиквелю" (SQL)
3. Выбрать методы (компоненты доступа), "заточенные" на работу с выбранной СУБД. Читать хэлпы и смотреть демо.

В сабжевой задаче:
1. Отказаться от BDE и тем паче от кривого десктопа.
2. Выбрать, например, акцесс, как самый "легкий" (в плане общедоступности и распространенности), в котором можно и создать БД и в дальнейшем отлаживать запросы.
3. Для решения данной задачи следует исходить из таких объектов:
а) персоны (prid, Fam, Nam, Nam2,...)
б) фотографии (phid, subscript, <картинка или path_to_file>)
Для них завести 2 "справочные" таблицы без каких-либо связей между объектами.
Для увязки людей с фото нужна связующая таблица, которая дубет содержать примерно такую инфу:
mid - идент-р связи
prid - указатель на персону
phid - указатель на фото

Такая система позволит компактно и нормализованно хранить данные так, что всегда можно будет легко получить сведения о том, кто изображен на данной фото или перечень фото, на которых имеется данная персона.
Если еще добавить в таблицу фоток некоторые доп.вещи (например, дата, название коллекции (альбома), показатель качества и т.д.), то можно будет вообще "навесить" удобный и мощные сервис поиска и составления коллекций.


 
azl ©   (2006-03-01 18:16) [15]

Луше всего, действительно,

> фото хранить в папке, а в БД хранить пути и имена к фоткам.

И при этом, например, создать папку Photos, а вней создавать папку с фамилией человека, при добавлении его в базу, ex. Photos\Иванов
А в базе хранить только имена папок. При просмотре информации о человеке, загружать нужную папку и просматривать фотки.


 
Sergey Masloff   (2006-03-01 22:06) [16]

azl ©   (01.03.06 18:16) [15]
>Луше всего, действительно,
Мда, иногда лучше жевать... На фиг тогда база вообще? Список папок без нее не вывести чтоли?


 
azl ©   (2006-03-02 11:47) [17]

Дело в том, что в базе хранится не только список папок, а и многие другие данные.


 
msguns ©   (2006-03-02 12:03) [18]

>azl ©   (01.03.06 18:16) [15]

При такой системе БД, действительно, навряд ли нужна. Только усложнит все и запутает. Одно из непременных условий нормальной БД - это целостность и избыточность хранимой информации. При хранении фото (или чего там еще) просто как файлов (со всей их доступностью вне БД и приложения) ни о какой целостности речи быть не может.
Вместо БД можно использовать программку, которая будет просто "собирать" инфу из указанных папок и показывать все это в красивых и удобных контролах. Как это делается, например, в музыкальных энциклопедиях.

Во-вторых, использовать для подобных задач парадокс, имхо, коряво, т.к. он сам по себе имеет файловую организацию. Предпочтительнее СУБД, компактно "прячущае" все хозяйство в один файл. Для локального применения вполне пригоден тот же access. Опять же имхо


 
azl ©   (2006-03-02 12:15) [19]


> msguns ©


А вы пробовали запихнуть в базу фотографии? Да еще и несколько для одной записи? Я сколько сталкивался с такой ситуацией, везде фотографии хранятся в отдельной папке, а не в базе данных.
В данной ситуации и база будет меньше весить, и работать с ней будет куда быстрее.
Предсавьте ситуацию, когда у вас в базе 1000 записей и на каждую по 10 фотографий. Да еще если фотографии большого размера. Сколько будет весить БД и как быстро будут выполняться операции с ней?


 
msguns ©   (2006-03-02 12:28) [20]

>azl ©   (02.03.06 12:15) [19]

Вы внимательно читали первый абзац из [18]. Если нет, то прочитайте еще раз. Внимательнее.


 
azl ©   (2006-03-02 12:54) [21]

Да, действительно не дочитал. Извиняюсь.



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

Форум: "Начинающим";
Текущий архив: 2006.03.19;
Скачать: [xml.tar.bz2];

Наверх




Память: 0.5 MB
Время: 0.013 c
5-1127450388
Vcoder
2005-09-23 08:39
2006.03.19
Изменение размера динамического массива из процедуры


2-1141394071
n_sch
2006-03-03 16:54
2006.03.19
Помогите разобраться с DBRichEdit !!!


15-1141063523
Некто
2006-02-27 21:05
2006.03.19
Подбор слов по выбранной тематике


5-1127376826
LLIR
2005-09-22 12:13
2006.03.19
компонент в dll-библиотеке


8-1128883380
palgen
2005-10-09 22:43
2006.03.19
DSPack





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