Hola amigos habra una manera de saber que id sera generado en un campo aunto incremento antes de hacer un inserta en una tabla
gracias espero sus comentarios
saludos
| ||||
Creo que esto te serviría: Código PHP: http://dev.mysql.com/doc/mysql/en/sh...le-status.html Salu2 ;) |
| |||
claro, selecionando el ultimo campo id de tu tabla creada y sumale uno, asi tu sabras cual sera el proximo campo generado acuerdate que el autoincremental, solo es un numero mas que el anterior, no encuentro cual es tu problematica |
| ||||
Hay que recordar que esto es multiusuario, si consultas por el ultimo id en un determinado momento no quiere decir que un segundo despues aun sea el ultimo, yo prefiero preguntar apenas he guardado cual fue el id generado, con la funcion: msyql_insert_id(); http://www.php.net/manual/es/functio...-insert-id.php |
| ||||
Cita: Bueno si por ejemplo tienes la siguiente tabla, a la que añadiste estos elementos al principio, sin borrar ninguno:
Iniciado por dark_goldviper claro, selecionando el ultimo campo id de tu tabla creada y sumale uno, asi tu sabras cual sera el proximo campo generado acuerdate que el autoincremental, solo es un numero mas que el anterior, no encuentro cual es tu problematica
Código:
El auto-increment estaría a 7, cómo es lógico.id animal ------------- 1 perro 2 gato 3 oso 4 ratón 5 tigre 6 toro Pero si borras por ejemplo la última fila e intentas obtener el auto_increment usando tu método, te devolvería 7, mientras que tu tabla se quedó en:
Código:
Salu2 ;) id animal ------------- 1 perro 2 gato 3 oso 4 ratón 5 tigre |
| ||||
Gracias yoseman Antes que nada gracias a todos por responder y yoseman que buen script publicaste no tenia idea de algo asi, mi proceso era crea un registro que guardara en la tabla en otro campo el id que se generara hice este proceso primero inserto luego usando mysql_insert_id hago un update donde namas actualizo el campo donde quiero la copia del id $sql ="INSERT INTO $WEB_IN (WEB_IN_TEX,WEB_IN_URL,WEB_IN_ST,WEB_IN_TARGET) VALUES ('$contenido','$url','$_POST[txau]','$_POST[txcarga]')"; $result= mysql_query($sql); if($result) { $mi_id=mysql_insert_id($conexion); $actualiza = "UPDATE $WEB_IN SET WEB_ID_ORDEN='$mi_id' WHERE WEB_IN_ID='$mi_id' "; $result= mysql_query($actualiza); if(!$result) { $error="v"; $mensaje="error: al tratar de actualizar la información."; echo mysql_error(); } } else { $error="v"; $mensaje="error: al tratar de almacenar la información."; echo mysql_error(); } mysql_close($conexion);
__________________ gerardo |
| ||||
Sí se trata por ejemplo de consultas secuenciales en las que se ha de insertar en múltiples campos de distintas tablas el identificador de una consulta, esa es desde luego la mejor opción. Precisamente cómo dice claudiovega, porque no es fiable, ya que en tiempo de paralelas ejecuciones puede variar el auto_increment debido por ejemplo a otra inserción en otro script. Pero claro preguntaste 'que id será generado' Salu2 ;) |