![]() |
consulta en IBSQL
Alguien me puede indicar porque esta consulta en un IBSQL no me funciona.
Con un valor solo no hay problema pero cuando le pongo el AND para la segunda la secuencia no se realiza. Un saludo. SELECT * FROM TELEFONO Where TBON=:valor1 and TDESTINO=:valor order by TDESTINO |
¿Te dará algun error, no?
¿Cual es? ¿Cual es el código que utilizar para lanzar ésta consulta? |
Tengo dos Combos y a los que se les da un valor antes de lanzar la consulta en un QuickRep.
Pero haciendolo directamente en el QuickRep. con un Preview y asignandole unos valores con el AND no saca ningún resultado y si le pongo el OR con una condición sola si que lo saca. InforZubicacion.IBQuery1.Params.ParamValues['valor1']:='combo1; InforZubicacion.IBQuery1.Params.ParamValues ['valor']:=combo; |
POsiblemente no sea un error, sino que le estas asiganado mal los valores de los parámetros
|
No creo que este signando mal los valores, pero no se lo que puede ser.
Estoy haciendo unas pruebas y con una base de dados de dbse en un SQL y funciona perfectamente y esta misma en interbase con un IBSQL en un QuickRep (Preview) y creo que esta correcta pero no funciona. Es esta misma: SELECT *from ARTICULOS WHERE BASEDATOS='MAQUINAS' and BONDESTINO='CAMINOS' |
¿Has cambiado entre mayúsculas y minúsculas?
Prueba con el operador LIKE. |
El problema no son las mayúsculas ni minúsculas pues quitando el AND y haciendo la búsqueda con una sola de las secuencias cualquiera que sea funciona, y es más si le quitamos en AND y lo sustituimos por un OR también funciona. No se porque no funciona con el AND que es lo que necesito, o sabeis algún otro operador que realice las mismas funciones?.
Un saludo |
Cita:
Dudo muchísimo que exista un error en el operador AND (vamos, pondría la mano en el fuego); Así que no busques otro operador que haga lo mismo por que ese es el que necesitas. Vuelve a revisar los datos que te devuelve con rl OR para ver que hay alguno que ciumpla ambas condiciones; Revisa que no existan espacios y caracteres por el estilo (no visibles) que hagan que la condición no se cumpla. |
Neftali: Perdona que no siguiera con el tema, pero bueno he estado unos días de descanso y lo deje ahí pendiente.
He vuelto a revisar los datos y hacer la consulta directamente en las propiedades SQL del IBQuery y haciendo las consultas por separado ejemplo: SELECT *from ARTICULOS WHERE BASEDATOS='MAQUINAS' order by BASEDATOS -Esto funciona correctamente. SELECT *from ARTICULOS WHERE BONDESTINO='CAMINOS' order by BONDESTINO -Esto también funciona correctamente. SELECT *from ARTICULOS WHERE BASEDATOS='MAQUINAS' or BONDESTINO='CAMINOS' order by BASEDATOS,BONDESTINO -Esto también funciona correctamente. SELECT *from ARTICULOS WHERE BASEDATOS='MAQUINAS' and BONDESTINO='CAMINOS' order by BASEDATOS,BONDESTINO y esto no me da ningún resultado, así es que no se que pensar ni que hacer ya que como veis aquí no hay ni espacios ni caracteres extraños. |
Si hay registros que cumplan ambas condiciones a la vez deberían aparecer. No veo ningun error.
|
Está claro que no hay registros que cumplan esas condiciones
|
Sí que hay registros que cumplan estas condiciones, por eso yo tampoco lo entiendo.
|
Por qué no nos envías un script sql con la creación de la tabla y algunos registros?, así podemos probarlo nosotros y ayudarte mejor.
|
He hecho de nuevo el volcado de Access a la base de Interbase con la que trabajaba y ahora funciona correctamente, el motivo no lo se.
Un saludo y muchas gracias por todo. |
La franja horaria es GMT +2. Ahora son las 09:41:34. |
Powered by vBulletin® Version 3.6.8
Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
Traducción al castellano por el equipo de moderadores del Club Delphi