Foros del Web » Programando para Internet » ASP Clásico »

SELECT LAST_INSERT_ID() AS Ident

Estas en el tema de SELECT LAST_INSERT_ID() AS Ident en el foro de ASP Clásico en Foros del Web. en MM_editQuery tengo un insert a una bd mysql ' execute the insert Set MM_editCmd = Server.CreateObject("ADODB.Command") MM_editCmd.ActiveConnection = MM_editConnection MM_editCmd.CommandText = MM_editQuery MM_editCmd.Execute MM_editCmd.CommandText ...
  #1 (permalink)  
Antiguo 14/06/2006, 00:26
 
Fecha de Ingreso: enero-2002
Mensajes: 1.438
Antigüedad: 22 años, 5 meses
Puntos: 0
SELECT LAST_INSERT_ID() AS Ident

en MM_editQuery tengo un insert a una bd mysql


' execute the insert
Set MM_editCmd = Server.CreateObject("ADODB.Command")
MM_editCmd.ActiveConnection = MM_editConnection
MM_editCmd.CommandText = MM_editQuery
MM_editCmd.Execute
MM_editCmd.CommandText = "SELECT LAST_INSERT_ID() AS Ident"
Set rsLastIdent = MM_editCmd.Execute
session("MM_IDresiduo") = rsLastIdent.Fields.Item("Ident").Value
MM_editCmd.ActiveConnection.Close

pero me dice q fields no es un objeto valido


cosa de las versiones mysql? algun fallo tonto?
no se he mirado el insert y se ejecuta y el LAST_INSERT_ID() directo en mysql

Última edición por rrufo; 22/07/2006 a las 01:26
  #2 (permalink)  
Antiguo 15/06/2006, 10:28
 
Fecha de Ingreso: enero-2006
Ubicación: Torroles (Costa der Só)
Mensajes: 1.017
Antigüedad: 18 años, 5 meses
Puntos: 7
Puedes usar SELECT @@IDENTITY que es sinónimo del LAST_INSERT_ID() y se estandariza con otras BD.

Otra cosa importante es que LAST_INSERT_ID() toma la última inserción hecha por la BD (independientemente de quien la haya hecho). Si vas a usar el objeto command, puedes ejecutar multiples sentencias SQL separadas por punto y coma. Asi te aseguras de qué tomas la ultima insercion.

Un ejemplo de esto lo hizo u_goldman aqui: http://www.forosdelweb.com/f15/recuperar-dos-ultimas-incersiones-ado-363041/



Un saludo
__________________
"Tus pecados son el estiércol sobre el que florecerán las flores de tus virtudes" - Gerald Messadié -
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 00:08.