Diagrama de BD. Como definir moderador para cada foro

<< < (2/4) > >>

Nakp:
bueno... por que crees que genera redundancia de datos? mientra la accion no sea moderar tienes solo 3 tablas involucradas, y al moderar necesitas estrictamente utilizar las 4

ahora lo que no entiendo es la relacion de hilo a hilo xD

Hadess_inf:
Pues claro, la relacion de hilo a hilo (recursividad) indica que un hilo (llamese post inicial), puede tener 0, 1 o muchos hilos (llamense respuestas), lo tomo asi puesto que un post inicial tiene los mismos campos que una respuesta, se identifica cuando es un Post inicial cuando el campo idhilo_res esta vacio.

Con lo de la redundancia de datos, probare con consultas y te estare informando de los resultados.

Saludos y gracias.
Tio verde. ¡¡¡

 :rolleyes: :rolleyes:

Nakp:
Cita de: Hadess_inf en 20 Noviembre 2009, 00:50 am

Pues claro, la relacion de hilo a hilo (recursividad) indica que un hilo (llamese post inicial), puede tener 0, 1 o muchos hilos (llamense respuestas), lo tomo asi puesto que un post inicial tiene los mismos campos que una respuesta, se identifica cuando es un Post inicial cuando el campo idhilo_res esta vacio.


jeje... ahi si hay redundancia... entiendes por qué necesitas una tabla de "respuestas"?

de hecho, la tabla de hilos no necesariamente debe tener la publicación inicial (en la mayoría de foros es la "respuesta 0"), puede contener un id, id de usuario autor, status, cant de respuestas y otra información... título talvez :P pero por lo general se toma de la "respuesta 0", si las pones todas en "hilo" tendras redundancia en id de hilo, a menos que el la pk sea "id respuesta"

sobre lo de "permisos" hasta ahora entiendo como lo habías puesto xD es que a veces carga la imagen que puse, y otras veces las tuyas pero nunca juntas y por eso no me enteraba que habias puesto un diagrama...

si crees que ese "circulo" es un error de diseño, te invito a que veas el diagrama de una bd de smf (que tambien usa el diseño que menciono smf_topics, smf_messages)

http://img71.imageshack.us/img71/4879/databasesmfvj5.png

Hadess_inf:
No puede haber redundancia en la recursividad de mi diagrama, lo he analizado bien y no creo que sea un error, el error vendria si se decide hacer como en el diagrama que adjuntas y dire porque:

Si se crean 2 tablas:

- Hilo
- Repuesta

La tabla usuario tendria que estar relacionado con ambas, esto traeria consigo redundancia, en cambio si solo se crea una tabla llamada hilo no... no se si solo sea un tabu pero siempre crei que hay que evitar esos circulos que se cierran (se que a veces es imposible pero en ocasiones si se puede).

Que opinas ¡ ?

Nakp:
la tabla usuario estaría relacionado con ambas pero de disitnta forma, una como creador del tema, y otro como creador de la respuesta, que no necesariamente es el mismo usuario, sobre la redundancia, si tienes idhilo como pk e idhilo_res como fk de la misma tabla... que tendrias en idhilo cuando es una respuesta?

se crea el tema:
idhilo: 10230 (pk)
idhilo_res: vacio (fk)

hasta ahí bien... pero... con una respuesta

Citar

idhilo: 10230 (pues es una respuesta al hilo 10230)
idhilo_res: 1 (la primera respuesta al hilo)


tienes 2 registros con la misma pk, algo inadmisible xD

Citar

idhilo: 10230 (otra respuesta al hilo 10230)
 idhilo_res: 2 (la segunda respuesta al hilo)


y así....

suponiendo que idhilo_res sea el id del hilo al que se responde, entonces la primera respuesta sería:

Citar

idhilo: vacío (es pk, por lo general not null)
idhilo_res: 10230 (no hay problema aqui)


segunda respuesta:

Citar

idhilo: vacío (es pk, inadmisible otra vez, y redundante)
 idhilo_res: 10230 (no hay problema aqui)


supongo que determinarías el orden de las respuestas por fecha... y ahora te pregunto, que ves en este link (el de tu respuesta)
https://foro.elhacker.net/bases_de_datos/diagrama_de_bd_como_definir_moderador_para_cada_foro-t275101.0.html;msg1350330#msg1350330

ahora.. como identificas cada respuesta si no hay id_mensaje o similar...

Navegación

[0] Índice de Mensajes

[#] Página Siguiente

[*] Página Anterior