dimecres, 18 d’abril del 2012

Bases de Dades Per un Projecte

abstenir-se artistes:


Representa que tinc una biblioteca en la qual hi han 3 tipus de documents:
articles: (pàgine,s imatges, mapes, etc...)
volums d'articles: (llibres, àlbums de fotos, etc)
col·leccions de Volums.






Cadascun d'aquests documents tenen un identificador clau primària obligatori.

Cadascun d'aquests documents poden tenir descripció o no tenir-la,
per exemple, si tinc un volum d'articles, cada article pot tenir una descrpció o no tenir-la,
de la mateixa manera el volum no té ua descripció obligatòria, ja que pot ser que pertanyi a una
col·leccio que ja en tingui una.
Podria haverhi també una col·lecció de volums d'articles sense cap descripció associada.
o un volum que no en tingui cap.
Tot això està pensat d'aquesta forma per a poder mantenir la base de dades amb constants actualitzacions del contingut.


La raó de mantenir 3 identitats (claus primàries) (una per coleccions, una per volums i l'altra per articles, és la mateixa, i en part
per facilitar l'accés a certs documents de forma més ràpida.

En aquest esquema, les taules podrien ser accedides només si cada tipus de document té 3 claus primàries.
per exemple,

id_colecció = col 000
id_volum = vol 004
id_article = art 001

conté una descripció, i

id_colecció = col 000
id_volum = vol 004
id_article = art 555

en contindria una altra...

però què passa quan el que vull descriure no són els articles, sino que vull descriure només un volum?

La taula m'està obligant a posar una clau d'article, ja que és una clau primària i no pot ser nul·la, si no vaig errada.
També m'està obligant a posar una clau de col·lecció, fet que no sempre es compleix.

Per tant això em fa pensar que l'esquema anterior no funcionarà bé per el que vull.

Però clar, si tinc una descripció, creant 3 taules diferents per a cada clau primària, mato el problema anterior,
i la solució em sembla poc convincent. No seria malbaratament d'espai que podria solucionar d'un altra forma?



//- comentaris:
El camp #volums i #articles val a dir que no indiquen el numero real que hauria de tenir, sinò que indiquen el numero teòric, 
és a dir que son atributs que només serveixen per veure si està completa la coleccio o està complet el volum.

Se m'ha acudit aquesta: