¿Cómo diseñaríais las tablas para esta web?

varuk

Hola.

Tengo en mente hacer una pequeña web que usarán mis amigos. Sera algo estilo Media-Vida, pero basado en partidos de fútbol. Por ejemplo, cada usuario ser registrará con su nombre, edad, correo...
Siempre me surge la duda de como diseñar las tablas en la base de datos MySQL para tenerlo todo bien organizado... y quería que ver, mas o menos, como lo hacéis vosotros.

Por ejemplo había pensado en una tabla que tuviera estos campos:

id
nick-login
contraseña
nombre
edad
goles marcados
partidos jugados
eficacia
tarjetas acumuladas
información del perfil

Luego otra tabla con los partidos en si mismo, como si fueran eventos (o aquí en MV sería un partido de clanes):

id
nombre dado al encuentro (ej: pachanga del viernes)
fecha
equipoA
equipoB
fecha
jugadores que han jugado
resultado

¿Vosotros separariais en la primera tabla los valores del "login" y "contraseña" para que esté en otra tabla y hacer luego una relación? ¿Es mejor usar pocas tablas o mejor ir dividiendo en tablas lo máximo que se pueda (sin abusar)?

Pues eso, no es una pregunta en concreto, si no mas bien que contéis un poco qué métodos seguís para hacer las tablas y si siempre seguís un patrón mas o menos parecido, etc. (y siempre vienen bien los conejos y recomendaciones).

Muchas gracias

B

Si todos los atributos que acompañan al login y al password son sólo de una entidad, déjalos en la misma tabla. De lo contrario tendrías una para los datos adicionales que corresponde al login en una relación que sería 1:1, lo cual es bastante estúpido. Lo tendrías que dividir si quieres que se pueda gestionar lo mismo desde 2 logins, y eso no tiene mucho sentido.

Podrías separarlo para apañarte en el caso en que se tuviesen datos que no estuviesen necesariamente presentes, y en el momento en que lo estén, asociar la tupla con los datos opcionales al login.

La verdad, patrón no mucho, ves los datos y luego los intentas plasmar en el modelo. No intentes hacer las tablas directamente.

Eso es lo que pienso con la poca experiencia que tengo en bbdd, quizá alguien te pueda guiar mejor.

NeB1

#1 nah, son datos 1:1, dejalos en la misma tabla, es tontería después hacer un left join pudiendo ser una única tabla.

Usuarios habituales