Baza danych z grafiką

Użytkowanie programu bazodanowego
podlaski
Posty: 2
Rejestracja: śr gru 07, 2016 9:27 pm

Baza danych z grafiką

Post autor: podlaski »

Witam wszystkich.

Chciałbym w Base zrobić bazę danych, która będzie zawierała tabelę "zdjęcia" (grafika), tabelę "kryteria wyboru zdjęć", tabelę "właściwości zdjęć", które będą przypisane zdjęciom. Zasadnicza funkcjonalność ma polegać na możliwości filtrowania, przeglądania zdjęć wg wybranych kryteriów lub/i wybranych właściwości.

"Zdjęcia" - "Kryteria" / relacja wiele do wielu
"Zdjęcia" - "Właściwości" / relacja wiele do wielu

Jak to zrobić?
OpenOffice 4.1.3 Windows XP
Jan_J
Posty: 4560
Rejestracja: pt maja 22, 2009 1:20 pm
Lokalizacja: Wrocław

Re: Baza danych z grafiką

Post autor: Jan_J »

Szkicowo: potrzebne są3 tabele w układzie
Kryteria(IdK integer primary key, Kryterium texst)
Zdjecia(IdZ integer primary key, Zdjecie blob, Opis text)
jeśli zdjęcia pamiętamy w bazie jako obiekty binarne
albo
Zdjecia(IdZ integer primary key, Path text, MD5 char(32), Opis text)
jeśli wolimy mieć zdjęcia jako pliki i pamiętamy tylko ścieżki
oraz tabelę łączącą wiele do wielu
Z2K(IdZ2K integer primary key, IdZ integer foreign key references(Zdjecia.IdZ), integer foreign key references(Kryteria.IdK), inne pola opisujące związek zdjęcia IdZ z kryterium IdK ad libitum -- np. data, uwagi tekstowe itp.).

Dla uniknięcia niezamierzonych powtórzeń warto dodać klauzulę unikalności par (IdZ, IdK) w tabeli łączącej tj. Z2K.

Do tego perspektywa (w ostateczności kwerenda) zbudowana na podstawie złączenia
Zdjecia join Z2K using(IdZ) join Kryteria using(IdK)

Być może bardziej przydatne będzie złączenie zewnętrzne (left join), żeby zawierało także wykaz zdjęć bez przydzielonych kryteriów.

Analogicznie 2 tabele opisujące właściwości i związek zdjęcia/właściwości.
JJ
LO (7.6|24.2) ∙ Python (3.12|3.10) ∙ Unicode 15 ∙ LᴬTEX 2ε ∙ XML ∙ Unix tools ∙ Linux (Rocky|CentOS)
podlaski
Posty: 2
Rejestracja: śr gru 07, 2016 9:27 pm

Re: Baza danych z grafiką

Post autor: podlaski »

Wymiękam... :-) To pół żartem, pół serio. :-) Odpowiedź widzę jako bardzo konkretną i fachową. Tylko jest problem z poziomem mojej percepcji - nie wiem, czy to nie za wysokie progi na moje nogi. Wprawdzie kiedyś w Access'ie zrobiłem bazę danych (30 tabel) powiązanych relacjami, ale to, co teraz przeczytałem, to... no cóż...

Dziękuję pięknie i postaram się sprostać. Lubiłem kiedyś konstruować bazy danych, określać tabele i relacje, ale ten poziom odpowiedzi to dla mnie poziom fachowości, z którym do tej pory nie miałem kontaktu.

Jeszcze raz dziękuję.

Pozdrawiam.
OpenOffice 4.1.3 Windows XP
ODPOWIEDZ