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

INSERT con retorno

Estas en el tema de INSERT con retorno en el foro de Bases de Datos General en Foros del Web. Forianos, mi consulta es la siguiente, tengo que insertar unos registros a un tabla, ejemplo tabla id_usuario int: nombre_usuario varchar2: apeliido_usuario varchar2; rut_usuario varchar; donde ...
  #1 (permalink)  
Antiguo 08/02/2011, 13:12
 
Fecha de Ingreso: febrero-2011
Mensajes: 100
Antigüedad: 13 años, 3 meses
Puntos: 0
INSERT con retorno

Forianos, mi consulta es la siguiente, tengo que insertar unos registros a un tabla, ejemplo

tabla
id_usuario int:
nombre_usuario varchar2:
apeliido_usuario varchar2;
rut_usuario varchar;

donde id_usuario incrementa automaticamente

para insertar hago lo tipico
insert into tabla (nombre_usuario,apeliido_usuario,rut_usuario) values('1','todo','nada');

pero cuando haga esa insercion quiero que me retorne el ID_USUARIO que se asigno a ese insert en este caso seria 1 ya que no tengo registros,


todo esto debe ser en una sola consulta no en dos.. gracias
  #2 (permalink)  
Antiguo 08/02/2011, 13:21
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: INSERT con retorno

En una sola consulta no se puede.. tendrias que hacer

insert into table (datos) values ('')

y despues un select max(id) from table

Saludos!
  #3 (permalink)  
Antiguo 08/02/2011, 13:33
 
Fecha de Ingreso: febrero-2011
Mensajes: 100
Antigüedad: 13 años, 3 meses
Puntos: 0
Respuesta: INSERT con retorno

sipis, de esa forma lo hice, pero solo de modo de prueba y me resulta, bueno tengo la primera consulta que me retorna el max y la llamo en php asi

$recibeMax = self::$datoDB->maxRequerimiento();
$max = $recibeMax['MAX'][0];

$max me devolvera ejemplo 1 o el N° del ID

y luego de esto inserto y le mano el parametro max a la tabla, pero lo encuentro muy ataoso por k tengo k entrar 2 veces a la DB y es una tabla bien poblada..!! pero si no hay otra forma seguire con lo mismo.. gracias de todos modos
  #4 (permalink)  
Antiguo 08/02/2011, 14:40
Avatar de Libras
Colaborador
 
Fecha de Ingreso: agosto-2006
Ubicación: En la hermosa perla de occidente
Mensajes: 7.412
Antigüedad: 17 años, 8 meses
Puntos: 774
Respuesta: INSERT con retorno

Y porque no usas un tipo de dato AUTO_INCREMENT, asi no necesitas consultar por el maximo valor de tu tabla simplemente insertas y listo se incrementa solo :) o asi ya lo estas haciendo?
  #5 (permalink)  
Antiguo 08/02/2011, 16:09
Colaborador
 
Fecha de Ingreso: marzo-2008
Ubicación: Cáceres
Mensajes: 3.735
Antigüedad: 16 años, 1 mes
Puntos: 300
Respuesta: INSERT con retorno

roys1985,
pide ayuda en al foro PHP, si es ese tu programa. Hay una función PHP que recupera el último id de MySQL insertado. No tienes por qué entrar de nuevo en la base.

Etiquetas: insert
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 04:21.