Tema: Execute
Ver Mensaje Individual
  #2 (permalink)  
Antiguo 29/12/2004, 03:39
Ramondi
 
Fecha de Ingreso: octubre-2004
Ubicación: Andorra!! Andorra!!!
Mensajes: 39
Antigüedad: 20 años, 6 meses
Puntos: 0
Eso creo que es por la manera en la que abres el recordset.
set rs= Server.CreateObject("ADODB.Recordset")
rs.Open SQL, oConn, 0, 2
set objRS=rs.Execute(SQL)


yo abro siempre de esta manera y no me da problemas, siempre y cuando no use los metodos de recordcount y demás :

set oConn=server.CreateObject("ADODB.connection")
oConn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("DATOS.mdb")
set rs=oConn.Execute(SQL)


Otra cosa, lo que me he fijado es que despues de crear el recordset, llamas al metodo movelast y demás pero del objeto oConn... creo que es al objeto rs (en el caso que lo hagas como te he descrito aqui arriba) al que tienes que llamar los metodos ;)
El codigo te quedaría asi :

set oConn= Server.CreateObject("ADODB.Connection")
oConn.open "Driver={Microsoft Access Driver (*.mdb)};DBQ="&Server.MapPath("DATOS.mdb")

SQL="SELECT * FROM modelos"

set rs=oConn.Execute(SQL)

'--------------------------
rs.MoveLast
num=rs("Id_book")
nombre_nuevo="modelo"&num+1&".jpg"


Response.Write("NOMBRE NUEVO: <b>" & nombre_nuevo & "</b>")
'---------------------------

rs.("nombre_nuevo")=nombre_nuevo
rs.Update 'Esta linea no estaba... xD

set rs=nothing
set oConn=nothing

'-----------------------------------------------------
'-----------------------------------------------------


Un saludo!

Última edición por Ramondi; 29/12/2004 a las 03:45 Razón: Para diferenciar el codigo y hacerlo mas leible