De antemano agradesco los comentarios que colocaron en este post, Neuron_376 vi que pusiste:
Código:
on error resume next
set rs = conn.Execute(sql)
if conn.Errors.Count = 0 then
if not rs.eof then
'Operaciones con el rs
'Cerrar el rs porque sabemos que tiene datos y esta correctamente abierto
rs.Close
else
'Rs vacio
end if
else
'Error en la consulta
end if
Yo estoy conectado y jalando la informacion de la siguiente forma:
Código:
Set adoCon = Server.CreateObject("ADODB.Connection")
adoCon.Open "DSN=BDSistema;"
Set rs = Server.CreateObject("ADODB.Recordset")
'por si pongo nuevos registros pongo lo siguiente
Const adOpenKeyset = 1
Const adLockOptimistic = 3
SQLValidaIdUsuario = "SELECT * FROM usuarios WHERE IdUsuario="&IdUsuario&""
rs.Open SQLValidaIdUsuario, adoCon
if not rs.eof then
'si exite registro has esto
end if
De acuerdo a lo que colocaste tendira que poner?:
set rs = conn.Execute(sql)
en vez de?
Set rs = Server.CreateObject("ADODB.Recordset")
Y otra pregunta:
Cita: if conn.Errors.Count = 0 then
if not rs.eof then
rs.Close
else
'en este caso no debo de cerrar el rs?
end if
Si si es fin de archivo o si no se encuntro lo requerido en el query no se habre el rs?, por que mi problema es que más adelante habro una y otra vez el
RS, como lo pongo a continuacion.
rs.Open SQLValidaIdUsuario, adoCon
Por ello mi pregunta de si existe forma de validar:
if rs open then
rs.close
End if
Ahora u_goldman comento:
Cita: pero si utilizas un cursor estatico y no regresa resultados, despues quieres cerrarlo, te arrojara error, si por el contrario utilizas un cursor dinamico, y pasa lo mismo, no regresara error
Si no existe forma de validar lo que pregunto me gustaria saber como lo pongo dinamico, acado el GetRows es poner el Rs de forma dinamica o que , gracias.
Gracias...