Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   uso del comodín '%' en una consulta SQL (https://www.clubdelphi.com/foros/showthread.php?t=18260)

Raze 07-02-2005 17:14:14

uso del comodín '%' en una consulta SQL
 
Estoy lanzando una consulta a una base de datos alojada en un SQL Server 2000 a traves de un AdoQuery

dm.tblMusica.Active := false;
ordensql := 'SELECT ObrasMusica.*, Autores.Nombre AS Nombre FROM ObrasMusica INNER JOIN Autores ON ObrasMusica.IdAutor = Autores.IdAutor Where Titulo LIKE :VCriterio';
dm.tblMusica.SQL.text := ordensql;
dm.tblMusica.Parameters.ParamByName('VCriterio').Value := txtcriterio.Text + '%';
dm.tblMusica.Active := true;

La busqueda la realiza según el criterio escrito en un edit (txtcriterio) y asociado al evento Textchange

El analizador de consultas de SQL Server me da el resultado esperado, por ejemplo, todos los títulos que empiecen por la P, sustituyendo :VCriterio por 'p%', pero lanzada la consulta desde Delphi 6, el comodín '%' se comporta como '_', es decir, solo se comporta como comodin con un sólo carácter, en vez de 'todo lo que vaya detrás', que es lo que pretendo.

¿alguna idea?

marcoszorrilla 07-02-2005 17:25:38

Has probado a utilizar el asterisco *

Un Saludo.

Raze 07-02-2005 17:43:17

Gracias por responder.
Sí, ya probé el asterisco, y con el no devuelve ningún resultado.
Saludos

Raze 07-02-2005 19:36:21

Solucionado
 
he logrado solucionar el problema excluyendo el parámetro en la consulta (por a alguien le pasara lo mismo)

ordensql := 'SELECT ObrasMusica.*, Autores.Nombre AS Nombre FROM ObrasMusica INNER JOIN Autores ON ObrasMusica.IdAutor = Autores.IdAutor Where Titulo LIKE ' + chr(39) + txtcriterio.Text + '%' + chr(39);

Aun así, construyo otras consultas más complicadas que esta pasando parámetros y el comodín no me da ningún problema.

Sigo intrigrado porqué con esta sí.


La franja horaria es GMT +2. Ahora son las 10:53:53.

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