FTP | CCD | Buscar | Trucos | Trabajo | Foros |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
||||
|
||||
Query se bloquea
Tengo este query:
Si lo ejecuto en IBManager tarda en ejecutarse 0,5 segundos (literal); si lo ejecuto desde la aplicación en la que tiene que funcionar se queda colgado y tengo que matar el programa. ¿Alguna idea de que puede estar pasando? |
#2
|
||||
|
||||
Asegúrate de que es la misma base de datos y también de que el problema es el query y no una línea posterior de código, algún bucle que hagas después, etc.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#3
|
||||
|
||||
Gracias. Es la misma base de datos seguro y cuando lo ejecuto desde la aplicación del Query->Open() no pasa.
|
#4
|
||||
|
||||
Pon un "break point" en el qr.open y cuando se pare ahí, copia el cotenido del sql que va a ejecutar. Luego lo pegas y lanzas desde el ibexpert/ibmanager.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#5
|
||||
|
||||
Es lo que hago para comprobarlo, por eso sé que se "cuelga" en el Open.
|
#6
|
||||
|
||||
Pero tú sabes que eso es imposible, si es exactamente el mismo select con la misma base de datos, no puede ocurrir eso, salvo que devuelva tantos millones de registros que no quepan en memoria.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#7
|
||||
|
||||
Ya lo sé y por eso me tiene muy mosqueado. Debe devolver un único registro.
|
#8
|
||||
|
||||
Yo lidié con un fallo así de misterioso y al final era debido a una StringList en la que le pasaba los parámetros a la query, no la query en si. Pero no fue sencillo encontrarlo porque no era un error evidente.
Puse un break point justo antes del problema y activé al llegar a ese punto: tools|debugger options|language exceptions|stop on delphi exceptions (después hay que sacarlo sino saltan avisos por todos lados) A continuación recorrí unha por una todas las llamadas de cada línea hasta localizar el elemento exacto que daba el error. Pero aparentemente (en una ejecución normal) el error parecía de la query cuando no lo era. |
#9
|
||||
|
||||
Si el problema es del qr.open, se puede confirmar haciendo un test minimo: Haz una app de consola que solo tenga el conexión, el query y ejecutar el open. Si te pasa ahi, entonces si es lo que dices.
Si no? Entonces existe otro factor en tu app que lo causa.
__________________
El malabarista. |
#10
|
|||
|
|||
El objeto Query tiene algún evento asociado como BeforeOpen, AfterOpen, etc...
De igual manera podrías revisar y de tener estos eventos desactivar y verifica su funcionamiento. Ojala puedas dar solución al problema y comentar lo que encuentres... Saludos cordiales |
#11
|
||||
|
||||
Y otra prueba más: aunque parezca una tontería, a veces sirve, elimina el componente y vuelve a poner otro.
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#12
|
||||
|
||||
Probaré y ya os diré que pasa. Gracias.
|
|
|
Temas Similares | ||||
Tema | Autor | Foro | Respuestas | Último mensaje |
El antivirus me bloquea mi programa.... | LoPiTaL | OOP | 10 | 20-05-2010 23:44:53 |
Select bloquea update | luis1980 | MySQL | 2 | 22-09-2008 13:51:04 |
Applyupdates me bloquea la aplicación | jmlifi | Conexión con bases de datos | 4 | 29-05-2007 15:37:45 |
Si se bloquea | Letty | Conexión con bases de datos | 2 | 23-12-2003 19:31:10 |
Se me Bloquea la aplicacion | josejuanm | SQL | 2 | 26-05-2003 08:54:54 |
|