dev v.0.0.1
 

Base de Dades

servidor: llda128.servidoresdns.netk
base dades: qs260 (abans qs087)

taules | codi SQL | apunts de treball | preguntes | recursos

Taules

Disseny inicial

Dades per crear la taula a MySQL

La base de dades té 4 taules:

  • taula node
  • taula recurs
  • taula noderecurs
  • taula nodenode

S'està estudiant si utilitzar o no una 5a taula per informació relacionada amb control d'accessos.

taula node
camp Tipus Valors/Longitud Atributs Nul Defecte Extra/auto-increment Primary Key Index Relacionat amb... Descripció Observacions
id_node INT   UNSIGNED NOT NULL  
A_I
P K
  identificador únic és INT perquè és un enter i UNSIGNED perquè és zero o un valor positiu. S'autoincrementa sol i és primary key
url BLOB     NOT NULL  
  url de la pàgina optem per BLOB enlloc de TEXT perquè no diferenciem entre majúscules i minúscules. No agafem TINYBLOB perquè no podem preveure l'extensió d'una URL. Tinc el dubte de si també hauria de ser primary key
data TIMESTAMP 14   NOT NULL 20040106083000
  data de la darrera consulta en què s'ha canviat alguna cosa opto per TIMESTAMP(14) que vol dir AAAAMMDDHHMMSS; altres opcions serien DATE o DATATIME.
vida SMALLINT 5 UNSIGNED NOT NULL 500
    amb un valor de 5 decimals sembla suficient però hem de veure que fem amb això de la vida. És NOT NULL perquè un node sempre té una vida assignada i quan arriba a zero es destrueix, com que no té valors negatius és UNSIGNED
nhash TINYINT 255 UNSIGNED NULL  
  número hash del conjunt de codi de la pàgina pot ser NULL ja que el podem crear sense haver accedit al seu codi per la ref. d'una altra pàg. Crec que les característiques del hash són: enter no negatiu i amb un valor límit de 256
taula recurs
camp Tipus Valors/Longitud Atributs Nul Defecte Extra/auto-increment Primary Key Index Relacionat amb... Descripció Observacions
id_recurs INT   UNSIGNED NOT NULL  
A_I
P K
  identificador únic autonumèric  
html TEXT     NOT NULL  
  html: codi html sencer d'un link; inclosos els <a> Aquest camp no pot estar buit perquè quan creem aquest registre sempre tenim codi.
src BLOB     NULL  
  URL de la imatge (si n'hi ha) NULL: el camp pot estar buit si no hi ha una imatge. BLOB perquè no diferenciem majúscula de mínúsculaté un límit de 65.535 caràcters.
width SMALLINT 4 UNSIGNED NULL  
  ample de la imatge (si n'hi ha) un SMALLINT ja ens dóna valors fins a 65535, suficient per al tamany d'una imatge que com a molt serà 1024. Valor 4 de 4 decimals. UNSIGNED perquè el valor no serà mai inferior a zero.
height SMALLINT 4 UNSIGNED NULL  
  alçada de la imatge (si n'hi ha) idem que anterior.
text TEXT 3   NULL  
  text entre <a></a> (si no hi ha imatge) considerem que el text pot ser superior a 255 caràcters però el limitem a 999; aquí tenim en compte la diferència majúscules/minúscules i posem TEXT enlloc de BLOB
m0 CHAR 24   NULL  
  nom arxiu d'imatge de la miniatura nivell 0 com que aquest nom el generem nosaltres el podem limitar a 24 caràcters; utilitzem CHAR perquè sembla que és ràpid. És NULL per si no hi ha imatge
m1 CHAR 24   NULL  
  nom arxiu d'imatge de la miniatura nivell 1 idem
m2 CHAR 24   NULL  
  nom arxiu d'imatge de la miniatura nivell 2 idem. (NOTA: potser seria viable i més òptim posar aquí el Binari del gràfic com a BLOB i no escriure arxius).
taula nodesrecurs [relaciona els recursos amb els nodes que apunten a través de les seves taules corresponents]
camp Tipus Valors/Longitud Atributs Nul Defecte Extra/auto-increment Primary Key Index Relacionat amb... Descripció Observacions
id_noderecurs INT   UNSIGNED NOT NULL  
A_I
P K
  identificador únic autonumèric  
id_node INT   UNSIGNED NOT NULL  
REFERENCES node (id_node) correspon al id_node de la taula node, d'una pàgina que està enllaçada des d'un recurs  
id_recurs INT   UNSIGNED NOT NULL  
REFERENCES recurs (id_recurs) correspon al id_node de la taula node, d'una pàgina que està enllaçada des d'un recurs  
taula nodenode [relaciona dos nodes de la taula node que s'enllaçen entre sí]
camp Tipus Valors/Longitud Atributs Nul Defecte Extra/auto-increment Primary Key Index Relacionat amb... Descripció Observacions
id_nodeWilliam INT   UNSIGNED NOT NULL  
PK
REFERENCES node (id_node) Node Apuntador: correspon al id_node de la taula node, d'una pàgina que té un enllaç  
id_nodeTellapple INT   UNSIGNED NOT NULL  
REFERENCES node (id_node) Node Apuntat: correspon al id_node de la taula node, d'una pàgina que és apuntada per un enllaç de la pàgina del camp anterior  
taula apamprefs [conté dades que són preferències del sistema apam]
camp Tipus Valors/Longitud Atributs Nul Defecte Extra/auto-increment Primary Key Index Relacionat amb... Descripció Observacions
id_prefs INT   UNSIGNED NOT NULL  
A_I
P K
  identificador únic autonumèric  
nomprefs CHAR 32   NULL           nom que identifica un conjunt de preferències  
vida_L INT 5 UNSIGNED NOT NULL  
  defineix el límit de vida dels nodes, es canviarà en funció de l'experiència  
vida_nV INT 5 UNSIGNED NOT NULL 0
  defineix els punts de vida que tindrà un node Visitat en ser creat  
vida_nNV INT 5 UNSIGNED NOT NULL  
  defineix els punts de vida que tindrà un node No-Visitat (o sigui que hem pillat la URL d'una pagina) en ser creat  

Codi SQL

Apunts de treball

Preguntes

preguntes ARSYS

902 15 45 56

1- PHPMyAdmin: s'hi poden relacionar taules d'una BD (a través de FOREIGN KEY o REFERENCE)?

RE: es poden fer relacions entre taules, sobre PHPMyAdmin o no no ho sap la noia

2- Es poden crear altres usuaris de la BD (amb menys privilegis que l'administrador)?

RE: Sí a Arsys, NO des de PHPMyAdmin; fes servir un Client MySQL

3- Es pot dialogar amb MySQL sense PHPMyAdmin, amb línia de comandes? Potser amb el Visor Global?

RE: El Visor Global només fa consultes. Es pot fer servir un Client MySQL i posar el mateix nom de servidor, nom de BD i contrasenya.

4- CVS Concurrent Versions Systems?

NO HO HE PREGUNTAT

-----usuaris privilegis limitats

 

-----base de dades relacional

Jaume;

* p

* a-pam() dia 3 març

* linux Rubí - lluís Antaviana - Quim Gil Interactors

* fulletons MB

* ARANEUM

* servidor MySQL

qüestions a resoldre

1- indexem algun camp?

2- Les imatges Miniatura es podrien incloure dins la BD i no haver d'escriure un arxiu? Això es pot fer guardant el binari del JPEG; cal veure si això és més o menys efectiu.

3- cal crear mínim 2 tipus usuari: administrador (apamAdmin) i consulta (apamUser)

4- cal trobar la manera que la base de dades sigui relacional

5- taula nodenode; no hauria d'indicar les dues direccions? és una opció. Podriem fer parelles de nodes i indicar quin apunta quin amb un camp amb tres valors (0,1,2)

recursos

Clients MySQL