Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   SQL (https://www.clubdelphi.com/foros/forumdisplay.php?f=6)
-   -   Like Con Ado (https://www.clubdelphi.com/foros/showthread.php?t=28767)

Javier_A 02-01-2006 13:15:17

Like Con Ado
 
Hola,
¿ alguien me podría decir como se monta una consulta SQL en un componente ADO utlizando LIKE para buscar por grupos ?
Gracias

Neftali [Germán.Estévez] 02-01-2006 13:48:36

No acabo de entender muy bien lo de "buscar pro grupos...", pero bueno:

Código SQL [-]
  // Nombre que empiezan por P
  SELECT * FROM Tabla WHERE Nombre LIKE 'P%'

El código Delphi podría ser:

Código Delphi [-]
...
  ADOQUERY.SQL.Add('SELECT * FROM Tabla WHERE Nombre LIKE');
  ADOQUERY.SQL.Add(QuotedStr('P%'));

Javier_A 02-01-2006 15:14:22

Gracias Neftali, eso es lo que buscaba, aunque todavía tengo una duda.....
En vez de buscar palabras que empiezan por 'p%' , quiero palabras que tengan el contenido de edit1.text que lo guardo en una variable que se llama codigo, para el codigo sql, ¿ como tengo que escribir las sentencias ?
Gracias de nuevo

Javier_A 02-01-2006 15:33:09

¿ Y si quiero buscar todos los códigos que contengan el numero 5 ? el campo de busqueda es numérico.

Neftali [Germán.Estévez] 02-01-2006 15:51:51

Cita:

Empezado por Javier_A
....quiero palabras que tengan el contenido de edit1.text que lo guardo en una variable que se llama codigo...

Bueno, dándole unas vueltas al coco no creo que sea difícil de deducir...

Código Delphi [-]
ADOQUERY.SQL.Add('SELECT * FROM Tabla WHERE Nombre LIKE'); 
ADOQUERY.SQL.Add(QuotedStr('%' + Codigo + '%'));
o
ADOQUERY.SQL.Add('SELECT * FROM Tabla WHERE Nombre LIKE');
ADOQUERY.SQL.Add(QuotedStr('%' + Edit1.Text + '%'));

Neftali [Germán.Estévez] 02-01-2006 15:55:47

Cita:

Empezado por Javier_A
¿ Y si quiero buscar todos los códigos que contengan el numero 5 ? el campo de busqueda es numérico.

En el caso de SQL Server, por ejemplo, se puede usar la sentancia exactamente igual (aunque sea un tipo numérico) y él se encarga de hacer la conversión.
Dependiendo del SGBD que estés utilizando puedes hacer tú; Revisa funciones del tipo CAST, CONVERT,... en la ayuda.

Javier_A 02-01-2006 16:44:24

Muchas gracias


La franja horaria es GMT +2. Ahora son las 17:50:00.

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