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

Obtener ids tras inserción múltiple de registros

Estas en el tema de Obtener ids tras inserción múltiple de registros en el foro de Mysql en Foros del Web. Hola: Estoy haciendo una inserción múltiple de registros de la forma: INSERT INTO X (id,...,...,...) Values (...,...,...,...) (...,...,...,...) (...,...,...,...) Mi pregunta es, tras realizar la ...
  #1 (permalink)  
Antiguo 30/10/2009, 11:58
 
Fecha de Ingreso: septiembre-2009
Mensajes: 215
Antigüedad: 14 años, 6 meses
Puntos: 1
Obtener ids tras inserción múltiple de registros

Hola:

Estoy haciendo una inserción múltiple de registros de la forma:

INSERT INTO X (id,...,...,...) Values

(...,...,...,...)

(...,...,...,...)

(...,...,...,...)

Mi pregunta es, tras realizar la inserción, ¿hay alguna manera de obtener los ids que se han generado(el campo id es autoincremental)?
  #2 (permalink)  
Antiguo 30/10/2009, 12:38
Avatar de Anubis_Slash  
Fecha de Ingreso: mayo-2009
Ubicación: aqui y haya
Mensajes: 173
Antigüedad: 14 años, 11 meses
Puntos: 5
Respuesta: Obtener ids tras inserción múltiple de registros

Código:
select id from tu_tabla      <------- esta sentencia te trae todos los ids
select count(id) from tu_tabla     <----- esta te tra el total de ids insertados
__________________
Bienvenidos los karmas.
Quejas, sugerencias o dudas, se awantan......
  #3 (permalink)  
Antiguo 30/10/2009, 12:48
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Obtener ids tras inserción múltiple de registros

select last_insert_id() devuelve el primer id insertado con un insert multiple
luego puedes usar select max(id) from tabla para obtener el ultimo
y ya teniendo el primero y el ultimo puedes sacar todos los insertados
  #4 (permalink)  
Antiguo 30/10/2009, 15:18
 
Fecha de Ingreso: septiembre-2009
Mensajes: 215
Antigüedad: 14 años, 6 meses
Puntos: 1
Respuesta: Obtener ids tras inserción múltiple de registros

Muchas gracias

Ya me queda claro ahora que lo leo,pq llevo la tarde volviendome loco porque pensaba que last_insert_id() devolvia el último de todos....
  #5 (permalink)  
Antiguo 30/10/2009, 16:57
 
Fecha de Ingreso: octubre-2008
Mensajes: 387
Antigüedad: 15 años, 6 meses
Puntos: 18
Respuesta: Obtener ids tras inserción múltiple de registros

Si estas usando PHP tambien podes invocar una funcion mucho mas limpia.

mysql_insert_id() .. asi sin parameros de devuelvo el ultimo id del ultimo INSERT que se ejecuto.

Podes ver la docu oficial aca:


http://www.php.net/manual/en/function.mysql-insert-id.php


Claro que solo te sirve en el supuesto caso que estes usando PHP, que en tal caso yo creo que es una solucion mas pulcra.

Saludos.
  #6 (permalink)  
Antiguo 30/10/2009, 17:51
Avatar de darkasecas  
Fecha de Ingreso: marzo-2005
Ubicación: SantaCata, NL, Mexico
Mensajes: 1.553
Antigüedad: 19 años, 1 mes
Puntos: 77
Respuesta: Obtener ids tras inserción múltiple de registros

De hecho, mysql_insert_id() tambien devuelve el primer autoincrementable generado en inserts multiples -_-
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 20:29.