Foros del Web » Programando para Internet » PHP »

Que tan rápido puede leer php en mysql

Estas en el tema de Que tan rápido puede leer php en mysql en el foro de PHP en Foros del Web. Hola estoy haciendo un proceso de post en php que hace 2 querys pero no a la misma vez Ejem: Código PHP: $query1  =  mysql_query ...
  #1 (permalink)  
Antiguo 16/04/2009, 13:03
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 4 meses
Puntos: 56
Que tan rápido puede leer php en mysql

Hola estoy haciendo un proceso de post en php que hace 2 querys pero no a la misma vez Ejem:
Código PHP:
$query1 mysql_query("INSERT INTO personas (id,nombre)values (null,'Pepegrillo')"// Ingresa Pepegrillo 
y luego si $query1 devuelve true SELECCIONO el ultimo id
Código PHP:
if($query1 ){$query2 mysql_query("SELECT max(id) FROM personas");} // quiero que me devuelva justamente el id de Pepegrillo (el último que se inserto) 
y quisiera saber si abrá problemas de rendimiento si intento leer en la DB un registro que se hizo casi ahi mismo
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #2 (permalink)  
Antiguo 16/04/2009, 13:13
 
Fecha de Ingreso: noviembre-2004
Mensajes: 92
Antigüedad: 19 años, 5 meses
Puntos: 0
Respuesta: Que tan rápido puede leer php en mysql

Hombre, si el campo id es índice el rendimiento que obtengas es el mejor.

Aunque de todas formas haciendo el insert antes lo que yo haria es generar yo mismo el id y me aseguro que es el máximo.
  #3 (permalink)  
Antiguo 16/04/2009, 13:16
Avatar de deivax  
Fecha de Ingreso: marzo-2006
Mensajes: 31
Antigüedad: 18 años
Puntos: 0
Respuesta: Que tan rápido puede leer php en mysql

Primero que nada, no es lo mismo hacer un SELECT que hacer un UPDATE o INSERT. Para estas últimas dos instrucciones, MySQL bloquea la tabla, salvo que la query se haga con LOW_PRIORITY o DELAYED.
Aparte, para obtener el último ID insertado, tanto MySQL como php proveen maneras de hacerlo sin realizar un SELECT en la tabla.
MySQL provee la función LAST_INSERT_ID(), y PHP provee la función mysql_insert_id().
Ambas funciones solamente devuelven el último id insertado solamente cuando la tabla utiliza AUTO_INCREMENT para la primary key.
  #4 (permalink)  
Antiguo 16/04/2009, 14:07
Avatar de America|UNK  
Fecha de Ingreso: noviembre-2006
Ubicación: Piura - Perú
Mensajes: 582
Antigüedad: 17 años, 4 meses
Puntos: 56
Respuesta: Que tan rápido puede leer php en mysql

pero imagina si crean un registro de otra tabla, yo solo quiero el id de la tabla usuarios.
Cita:
Aunque de todas formas haciendo el insert antes lo que yo haria es generar yo mismo el id y me aseguro que es el máximo.
Si hago eso sería un desorden total.
__________________
/* El que atiende, entiende..., el que entiende, aprende!.
Desarrollo Web Freelance, Contactar */
  #5 (permalink)  
Antiguo 17/04/2009, 01:33
 
Fecha de Ingreso: noviembre-2004
Mensajes: 92
Antigüedad: 19 años, 5 meses
Puntos: 0
Respuesta: Que tan rápido puede leer php en mysql

La clave de una tabla (id creo que en tu caso) debe ser único por tabla, no es necesario que sea a nivel de base de datos.

Ahora, si tu quieres tener un id que no se repita en toda la base de datos, no solo deberás hacer una select contra la tabla de personas, sino contra todas las tablas y quedarte con el mayor.
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 19:47.