Diferente comportamiento de un query
Buenos días. A ver si alguien me puede dar una explicación porque llevo días luchando con ese mensaje y no sé como resolverlo. Estoy ejecutando este query en un BB.DD. FB 2.5.6:
Sé que el query es un poco complejo, pero el problema no es ese. El problema es que si lo ejecuto desde la aplicación me da el error SQLCODE -804: Incorrect values within SQLDA structure pero si lo ejecuto desde SQL Manager, con los mismos valores en todos los parámetros en ambos casos, se ejecuta correctamente y me da los resultados que quiero y no entiendo por qué ese diferente comportamiento. |
¿Podemos ver el código de tu programa donde se asigna esa sentencia y los parámetros?
|
Como no, pero es un poco lío.
Código:
cAux = "AND Mesa IN (SELECT Codigo FROM Mesas WHERE CodPrv = A.CodPrv";
|
Ya las tablas que se usan son estas:
|
Pon un "breakpoint" en la línea:
fMenu->Auxiliar->Open(); Y mira con el debug qué valor tiene "SQL". Puede ser que con las concatenaciones haya código "pegado", algo como: "order byCampoTal" en lugar de "order by CampoTal", por poner un ejemplo. |
Cita:
|
Cita:
|
Gracias. Lo comprobaré.
|
No pierdes nada comprobándolo, aunque resulte que no sea eso finalmente.
Es que una vez me pasaba eso mismo y resultó que era el problema. |
Tienes razón. Ya te diré.
|
Tienes algunos parámetros repetidos.
Creo recordar que no se puede repetir el nombre de los parametros porque se grilla el chino. :Proceso1 :Proceso2 :PrvIns Cambia los nombres y prueba. Saludos |
Lo había pensado e hice la prueba, pero sigue dando el mismo error. Lo que me sorprende es que en el SQL Manager funciona perfectamente.
|
A ver si algún parámetro no tiene un valor correcto o algo así.
|
Gracias a todos por vuestras respuestas. Al final, y después de días probando, encontré la solución dándole "la vuelta" al query y en vez de la monstruosidad que puse el primer día me ha quedado algo mucho más sencillo y fácil de ejecutar:
|
La franja horaria es GMT +2. Ahora son las 00:32:02. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi