Foros del Web » Programando para Internet » PHP »

php , Mysql consultas

Estas en el tema de php , Mysql consultas en el foro de PHP en Foros del Web. cual sera la mejor manera para evitar que una pagina se cuelge cuando hago una consulta a una tabla que tiene muchos datos... la base ...
  #1 (permalink)  
Antiguo 06/01/2005, 10:32
 
Fecha de Ingreso: diciembre-2004
Mensajes: 32
Antigüedad: 19 años, 3 meses
Puntos: 0
php , Mysql consultas

cual sera la mejor manera para evitar que una pagina se cuelge cuando hago una consulta a una tabla que tiene muchos datos... la base esta es MySql... que hacer con datos viejitos o como optimizar estas consultas
  #2 (permalink)  
Antiguo 06/01/2005, 10:55
 
Fecha de Ingreso: junio-2003
Ubicación: Ciudad de Panamá
Mensajes: 74
Antigüedad: 20 años, 10 meses
Puntos: 0
Vale Tío, un consejo es que procures optimizar las tablas con algun tipo de indice, ya que en mi casa antes las consultas me colgaban el sistema cada vez que las hacia, por lo que implemente un Mysql DBMS freeware y optimice las mismas y chachan!! problema resulto.

Al menos que haya otra cosa que no sepa...de pronto esa sea tu solución.

Descárgalo de: www.dbtools.com.br
  #3 (permalink)  
Antiguo 06/01/2005, 11:02
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Pero .. cuando haces esa "consulta" .. con que objetivo la haces?.. para presentar esos registros a tu usuario del sisitema? ... Si es así .. existen técnicas de "paginado" para sólo mostrar un grupo de registros que .. son al fin y al cabo los que va a ver el usuario y .. si quiere ver mas .. ya irá avanzando en las páginas del resultado.

Sobre optimizar las consultas SQL que uses .. para eso deberías aportar el código que actualmente usas y ahí se podría ver de como poder optimiza algo más si corresponde tu código (tanto PHP como SQL empleado). (si vas hacer eso .. indica la estructura de tus tablas de tu BD implicadas).

Un saludo,
  #4 (permalink)  
Antiguo 06/01/2005, 11:55
 
Fecha de Ingreso: diciembre-2004
Mensajes: 32
Antigüedad: 19 años, 3 meses
Puntos: 0
a ver la base ya esta casi toda indexada eso fue lo primero que hice ... pero nada... las consultas son para presentar reportes por ejemplo de las compras de un año con todos sus productos es necesario jalar datos de dos tabla y hay veces en donde las consultas son de mas de dos hasta tres cuatro tablas de datos de mucho tiempo muchos datos... hay es donde se vuelven lentas las consultas...
  #5 (permalink)  
Antiguo 06/01/2005, 14:30
O_O
 
Fecha de Ingreso: enero-2002
Ubicación: Santiago - Chile
Mensajes: 34.417
Antigüedad: 22 años, 3 meses
Puntos: 129
Bueno .. pues en ese caso tendrás que repasar tu modelo de datos .... Expon lo que tienes: tus BD .. las relaciones entre tus tablas .. los campos que están indexados .. de que tipo son: estructura de tu BD y ejemplos de consultas SQL que ejecutas ..

En principio no es lo mismo usar "JOIN's" para trabajar con várias tablas que hacer un "WHERE tabla1.campo_clave=tabla1.campo_clave" eso .. como para empezar .. Y a todo esto asumiendo que estés haciendo consultas relacionadas ..por qué si usas consultas "básicas" y las "anidas" para obtener las subconsultas con "PHP" ahí ya baja el rendimiento muchoooooooo!.

Luego hay otros procesos que muchas veces se solventa con PHP al trabajar con BD .. ejemplo: campos tipo "flag" con un 1 -> significa tal cosa y así debe presentar un dato en tus listados .. 0 -> significa otra cosa y así debe presentar otro dato ... Eso se suele resolver con un "if()" en PHP .. pero hay que recordar que Mysql tambien puede usar estructuras de control (IF .. Switch .. etc) entre otras cosas que no tal vez no se suela pensar que en "SQL" se puede resolver y si se puede.

A lo que quiero llegar es que .. cuanto más SQL se use (y optimizado este ...) mejor irán tus aplicaciones.

Un saludo,
  #6 (permalink)  
Antiguo 06/01/2005, 14:55
 
Fecha de Ingreso: febrero-2004
Ubicación: Bogotá, Colombia
Mensajes: 191
Antigüedad: 20 años, 2 meses
Puntos: 1
Ademas, si tienes muchos indices tambien eso hace lentas las consultas, tienes q analizar bien a q campos le pones indices. Y si, es mejor q utilices JOIN para generar las consultas y trata de evitar los productos cartesianos para hecer las queries
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 14:53.