![]() |
![]() |
![]() |
![]() |
![]() |
FTP | ![]() |
![]() |
CCD | ![]() |
![]() |
Buscar | ![]() |
![]() |
Trucos | ![]() |
![]() |
Trabajo | ![]() |
![]() |
Foros | ![]() |
|
Registrarse | FAQ | Miembros | Calendario | Guía de estilo | Temas de Hoy |
![]() |
|
Herramientas | Buscar en Tema | Desplegado |
#1
|
|||
|
|||
ADOQuery y consulta con LIKE
buenos dias, estoy retocando un programa antiguo desarrollado en Delphi 6 y me sucede, ahora, antes no sucedia, que cuando le asigno la sentencia SQL a un ADOQuery y esta contiene una condicion LIKE para filtrar los campos que va a obtener de la base de datos, siempre devuelve vacio, es como si no funcionara el LIKE, la base de datos esta en microsoft Access version 2003, utilizo las comillas ' y el comodin de * ya que el campo a comprara es texto, por ejemplo, una consulta que me devuelve vacio es esta SELECT Inicial FROM PremisasAcc WHERE Codigo LIKE 'CPSV_2025*', sin embargo coloco su codigo en access y si devuelve correctamente los resultados
Última edición por Casimiro Notevi fecha: 26-09-2024 a las 16:52:38. |
#3
|
||||
|
||||
Creo que con msaccess es con asterisco en lugar de % y el guión subrayado en lugar de ?
__________________
La otra guía de estilo | Búsquedas avanzadas | Etiquetas para código | Colabora mediante Paypal |
#4
|
|||
|
|||
quizas sea eso, en la codificacion de las tablas utilizo el guion bajo, y puede que access lo interprete diferente, verificare esas cosas
|
#5
|
|||
|
|||
Muestra tu código para revisar lo que dices, quizas el error este en las comillas, en código debes usar "QuotedStr" para reemplazar las comillas.
|
#6
|
|||
|
|||
es que da igual, todo lo que vayas a asignar al SQL.Text de un ADOQuery y contenga LIKE 'cualquiertexto*' devolvera 0 registros, uso QuotedStr y todo, y no devuelve ni un registro
|
#7
|
|||
|
|||
Pues si no muestras un poco de código de esa búsqueda, bueno no hay como ayudarte.
|
#8
|
|||
|
|||
Cita:
Última edición por Neftali [Germán.Estévez] fecha: 27-09-2024 a las 13:21:33. Razón: Añadir TAG's al código |
#9
|
|||
|
|||
Ya vi tu problema, es el query que lo liberas y al hacerlo se pierden los registros, trata de hacerlo como una variable de formulario.
|
#10
|
|||
|
|||
Cita:
if not QLista.IsEmpty //=>la lista esta vacia, no se obtuvieron registros, cambio la consulta de seleccion eliminando el LIKE y me devuelve registros, verifico la consulta con el LIKE en access y esta bien, devuelve los registros que son segun sea la condicion LIKE antes el LIKE funcionaba, ahora no, algo mas paso y no me di cuenta |
#11
|
|||
|
|||
Hice un pequeño ejemplo con una bd de access y el problema es el * y debes usar %
Use access 2013 proveedor "Provider=Microsoft.ACE.OLEDB.12.0" y una tabla con campo texto nombre. Funciona lo de arriba. Última edición por marco3k fecha: 26-09-2024 a las 23:15:51. |
#12
|
|||
|
|||
Cita:
voy a probar a ver, no recuerdo si usaba % anteriormente en los LIKE o siempre use *, incluso cambie el proveedor entre ese q usaste y "Provider=Microsoft.Jet.OLEDB.4.0" y obtenia el mismo resultado |
#13
|
|||
|
|||
gracias marcos3k, era eso, el %, vaya q clase de pifia, es q hacia tiempo no retocaba esos programas
|
![]() |
|
|
![]() |
||||
Tema | Autor | Foro | Respuestas | Último mensaje |
consulta en un ADOQUERY | the walrus | Tablas planas | 21 | 17-09-2018 12:02:02 |
Consulta ADOQuery | barakuda | SQL | 7 | 10-04-2014 03:35:48 |
Consulta SQL en ADOQuery | epenor | Conexión con bases de datos | 7 | 29-09-2008 04:16:27 |
consulta adoquery | Yensis22 | SQL | 1 | 15-06-2008 21:09:03 |
consulta con un adoQuery | manu | Conexión con bases de datos | 4 | 29-09-2006 00:17:48 |
![]() |
|