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

Problema extraño con consulta

Estas en el tema de Problema extraño con consulta en el foro de ASP Clásico en Foros del Web. Os cuento lo que estoy haciendo y lo que me está pasando, a ver si a alguien se le ocurre que puede estar pasando, porque ...
  #1 (permalink)  
Antiguo 09/09/2009, 01:56
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 22 años, 5 meses
Puntos: 8
Problema extraño con consulta

Os cuento lo que estoy haciendo y lo que me está pasando, a ver si a alguien se le ocurre que puede estar pasando, porque no tengo ni idea!!

El proceso es el siguiente: primero borro todos los registros de una tabla que tengo para almacenar resultados de forma temporal. Después hago una consulta y meto todos los resultados en esa tabla. A continuación cierro tanto la consulta como la tabla temporal. El siguiente paso es el que me da problemas, hago una consulta, sobre otra consulta que está creada en la base de datos. Esta consulta usa tanto la tabla temporal como otra más que está relacionada. Si ejecuto la consulta directamente en la base de datos, me da resultados, sin embargo desde el asp no me dice que no hay resultados. Lo más curioso es que si en la consulta de la base de datos cambio la tabla temporal por otra que tiene la misma estructura, pero con otros datos, si que funciona el asp, a pesar de que en ambos casos hay registros válidos.

Os dejo el código fuente y una imagen de la consulta, como podeis ver en la imagen, la consulta devuelve 98 resultados, sin embargo cuando hago un select sin ninguna condición sobre esa consulta, dice que no hay resultado:

Código PHP:
<&#37;@LANGUAGE="VBSCRIPT" CODEPAGE="1252"%>
<%
Dim conex_STRING
conex_STRING 
"dsn=web"
fecha_inicio=request.form("fechainicio")
fecha_fin=request.form("fechafin")
if 
fecha_inicio "" Then
    fecha_inicio 
date
end 
if
if 
fecha_fin "" then
    fecha_fin 
date
end 
if

sql_borrado="Delete * from tmp_entradas"
set borrado Server.CreateObject("ADODB.Recordset")
borrado.activeconnection conex_String
borrado
.CursorType 1
borrado
.LockType 3
borrado
.Open sql_borrado

sql 
"select * from logins where fecha >= #"&fecha_inicio&"# and fecha <= #"&fecha_fin&"# order by fecha asc"
set resultados Server.CreateObject("ADODB.Recordset")
resultados.activeconnection conex_String
resultados
.CursorType 1
resultados
.LockType 3
resultados
.Open sql

sql_tmp
="Select * from tmp_entradas where empresa='asd'" Consulta para abrir la tablamejor si no da resultados
set tmp 
Server.CreateObject("ADODB.Recordset")
tmp.activeconnection conex_String
tmp
.CursorType 1
tmp
.LockType 3
tmp
.Open sql_tmp

while not resultados.eof
    tmp
.addnew
    tmp
("empresa") = resultados("empresa")
    
tmp("seccion") = resultados("seccion")
    
tmp("fecha") = resultados("fecha")
    
tmp("usuario") = resultados("usuario")
    
tmp.update
    resultados
.movenext
wend
tmp
.close
resultados
.close

sql2
="Select * from entradas2"
set resultados2 Server.CreateObject("ADODB.Recordset")
resultados2.activeconnection conex_String
resultados2
.CursorType 1
resultados2
.LockType 3
resultados2
.Open sql2

response
.write("Aqui: " resultados2.recordcount)


%> 
__________________
Vayamos por Partes :: Jack el Destripador
  #2 (permalink)  
Antiguo 09/09/2009, 03:31
Avatar de angel_dope  
Fecha de Ingreso: noviembre-2002
Ubicación: Valencia
Mensajes: 737
Antigüedad: 22 años, 5 meses
Puntos: 8
Respuesta: Problema extraño con consulta

Ya está resuelto. Por increible que parezca... el tema estaba en que iba demasiado rápido, parece ser que cuando llegaba a la última consulta aun no había terminado de insertar todos los datos en la tabla y por eso no sacaba resultados!!! Lo que he hecho ha sido hacer primero la inserción, y después redirigir a otra página donde ya se hace la consulta, de esta forma va perfectamente.

La verdad es que no me habia pasado nunca algo asi!!!
__________________
Vayamos por Partes :: Jack el Destripador
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 02:39.