Foros del Web » Programación para mayores de 30 ;) » Bases de Datos General » Mysql »

Recuperar campo de la ultima fila affectada en un insert

Estas en el tema de Recuperar campo de la ultima fila affectada en un insert en el foro de Mysql en Foros del Web. Hola. pongamos este ejemplo tabla usuario: id int(), primary autoincrement nombre varchar(255) Código PHP: include( "conexion.php" ); $sql  =  "insert into db_name (name) as ('" . $value . "')" ; ...
  #1 (permalink)  
Antiguo 23/03/2007, 12:06
Avatar de puppys  
Fecha de Ingreso: diciembre-2003
Ubicación: Argentina - Capital Federal
Mensajes: 33
Antigüedad: 20 años, 4 meses
Puntos: 0
Recuperar campo de la ultima fila affectada en un insert

Hola.

pongamos este ejemplo

tabla usuario:

id int(), primary autoincrement
nombre varchar(255)

Código PHP:
include("conexion.php");
$sql "insert into db_name (name) as ('".$value."')";
$mysql_query($sql$link); 
mi duda:
como recupero, de forma óptima, el ultimo id creado automáticamente por MySql en la ultima consulta ?.

gracias de antemano.
  #2 (permalink)  
Antiguo 23/03/2007, 12:12
 
Fecha de Ingreso: diciembre-2003
Ubicación: Buenos Aires
Mensajes: 9
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Recuperar campo de la ultima fila affectada en un insert

mysql_insert_id -- Devuelve el identificador generado en la última llamada a INSERT
  #3 (permalink)  
Antiguo 23/03/2007, 13:58
Avatar de puppys  
Fecha de Ingreso: diciembre-2003
Ubicación: Argentina - Capital Federal
Mensajes: 33
Antigüedad: 20 años, 4 meses
Puntos: 0
Re: Recuperar campo de la ultima fila affectada en un insert

Muchisimas gracias :D
  #4 (permalink)  
Antiguo 26/03/2007, 14:58
CiS
 
Fecha de Ingreso: abril-2002
Mensajes: 71
Antigüedad: 22 años
Puntos: 0
Re: Recuperar campo de la ultima fila affectada en un insert

Hola!
¿y si quiero agregar ese ultimo ID a siguientes y sucesivos inserts??
Como lo guardo en una variable? (estoy trabajando con una transaccion, y debo hacer varios inserts en forma simultanea, y en un par de tablas debo insertar uno de los id generados en esta secuencia). Tiene que ser algo parecido a esto no?:


insert 0... (id, ..., ... )value (NULL, ..., ...);
@pepe= ...last_id() ; //funcion que trae el ultimo id generado en insert0
// (estoy en cyber y no tengo mis fuentes aca!!!!
insert 1... (..) values (..., @pepe, ....);
insert 2... (..) values (..., ..., @pepe, ....);
insert 3... (..) values (@pepe, ...., ....);

¿Se entiende mi duda? No se la sintaxis!!!

Muchas gracias!!!!
CiS
  #5 (permalink)  
Antiguo 26/03/2007, 15:08
Avatar de Carxl
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: Bogotá
Mensajes: 2.993
Antigüedad: 17 años, 8 meses
Puntos: 70
De acuerdo Re: Recuperar campo de la ultima fila affectada en un insert

Hola!

Si trabajas php, serìa asì:

$ultimo_id=mysql_insert_id();

En la varible $ultimo_id se guardarìa el id autoincrementable y pues para las demàs tablas que necesitan ese id, pones es la variable "$ultimo_id".

Saludos!
__________________
Hay 10 tipos de personas, los que entienden binario y los que no. (Anónimo)
www.programandoweb.com
  #6 (permalink)  
Antiguo 28/03/2007, 09:49
CiS
 
Fecha de Ingreso: abril-2002
Mensajes: 71
Antigüedad: 22 años
Puntos: 0
Re: Recuperar campo de la ultima fila affectada en un insert

Muchas muchas gracias!!!!!!!

con eso anduvo barbaro!
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 03:01.