Ver Mensaje Individual
  #20 (permalink)  
Antiguo 07/08/2013, 04:44
quimfv
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Sabadell
Mensajes: 4.897
Antigüedad: 16 años, 1 mes
Puntos: 574
Respuesta: ¿Es recomendable una tabla con 1000 columnas?

He leido todo lo que habeis dicho y yo veo lo siguiente

TblUnidades
idU
...Campos para los datos generales de la unidad...

TblElementos
idE
idTpE FK a TblTpElementos
idU FK a TblUnidades
...campos comunes a todos los elementos (posición ???...)...

TblTpElementos
idTpE
...Campos que describen al tipo de elemento (nombre, tamaño...??)

TblLecturas
idL
idE FK a TblElementos
idTpL FK a TblTpLecturas
fechaHora (datetime) (No debe ser único podría haber distintas lecturas que se toman al mismo tiempo)
valor
...Quizas no hacen falta mas campos....

TblTpLecturas
idTpL
unidades
...otros campos...

TblRTpElementoTpLecturas
idR
idTpE FK
idTpL FK
... otros (frecuencia?)...

(Con esta tabla consigues obtener los objetos de formulario que se deben mostrar en la pantalla de un elemento)


Tbl---Tabla
Tp---Tipo de
TblR --- Tabla de relación


Con esta estructura es muy posible que puedas representar tu sistema... sin, seguramente, agregar muchos campos en las entradas con suspensivos de cada tabla. Seguro que no necesitas agregar 1000 campos.

Con esto tendras muchos registros en las tablas Elementos y Lecturas pero pocos campos....


Código MySQL:
Ver original
  1. SELECT fechahora,
  2.              valor
  3. FROM TblLecturas
  4. WHERE idTpL=X
  5.      AND idE=Y
  6.      AND YEAR(fechahora)=2013
  7.      AND MONTH(fechahora)=1;

Esta sencilla consulta te da los datos del grafico de enero del 2013 para la lectura X del elemento Y.

Código MySQL:
Ver original
  1. SELECT L.fechahora,
  2.              L.idE,
  3.              L.valor
  4. FROM TblLecturas L
  5.      INNER JOIN TblElementos E
  6.           ON L.idE=E.idE
  7. WHERE L.idTpL=X
  8.      AND E.idTpE=Y
  9.      AND YEAR(L.fechahora)=2013
  10.      AND MONTH(L.fechahora)=1;

Esta los del grafico de todos los elementos de tipo Y, pera el mismo tipo de lectura y periodo.

Se puede complicar con join para obtener la unidad y los datos del elemento pero para el grafico es suficiente.

Ojo no es el esquema ER (Entidad/Relación) son las tablas físicas. (Sabes que no toda Entidad se convierte en tabla fisica ni a la inversa) Obviamente se puede complicar pero para eso debería conocer mas el caso.
__________________
Quim
--------------------------------------------------
Ayudar a ayudar es una buena práctica!!! Y da buenos resultados.

Última edición por quimfv; 07/08/2013 a las 05:49