Hola
Estoy teniendo problema con la consulta a una base de datos. Funciona bien pero es muy LENTA.
Supongo que es por la forma en que estructuré la base de datos y la consulta en si misma.
Es para guardar fichas de productos químicos que llevan muchos datos, para ser exacto: cada producto tiene
80 datos (titulo, descrip, peso, tamaño, etc). Y hay
150 productos
En la base de datos he creado
3 campos (id, nombre, datos) y como se crea una fila por producto hay
150 filas.
El
id es autoincrementa,
El
nombre es un texto de 60 characters como máx.
Y
datos se compone de lo siguiente:
creo un array ($miArray) con 80 elementos (cada uno con su clave) algo como:
$miArray=array ('titulo1' => 'Título de Producto', 'descrip1' => 'Descrip de Producto', 'peso1' => 'Peso de Producto', ...)
Antes de guardarlo uso serialize(): $
miArrayParaGuardar=serialize($miArray);
Luego para recuperar los datos recupero 'datos' de la base de datos de esta forma:
Código:
$sql="SELECT datos FROM miDB WHERE nombre='textoEnNombre'";
$result = mysql_query($sql);
$row = mysql_fetch_array($result);
$miArrayEnDB=$row[0];
$miArray=unserialize($miArrayEnDB);
$valorDeDato='titulo1';
$valorDeDato=$miArray[$valorDeDato];
echo '
TITULO 1:<br/>'.$valorDeDato.'<br/>
//y así voy recuperando todos los datos
';
Alguna idea para hacer esto de una forma que sea más rápido?
Puede ser que necesite un hosting más potente? El que tengo es muy normalito, si cambio a un servidor más rápido se va notar alguna diferencia?
gracias
saludos