Foros Club Delphi

Foros Club Delphi (https://www.clubdelphi.com/foros/index.php)
-   Conexión con bases de datos (https://www.clubdelphi.com/foros/forumdisplay.php?f=2)
-   -   Parametros nulos en Tquery (https://www.clubdelphi.com/foros/showthread.php?t=43836)

jlrbotella 22-05-2007 09:41:44

Parametros nulos en Tquery
 
Hola:

En un Tquery tengo 2 parámetros uno empresa y otra cadena. Ambos de tipo entero y me gustaría pasar al primer parámetros el valor de 1 y el segundo parámetro (cadena) el valor de no nulo. La SQL es la siguiente:

SQL Inicial;

select * from cliente
where empresa=:empresa
and cadena=:cadena;

Y me gustaría que al pasar los parámetros la sql quedase así:

select * from cliente
where empresa=1
and cadena is not null.

¿Es posible pasar a un parámetros los siguientes valores de:
<,>, not null, null?.

Gracias.

Lepe 22-05-2007 11:01:07

Con parámetros no creo que pueda hacerse, o al menos tal y como yo lo he entendido.

al usar parámetros estas forzando el tipo de datos, si usas "AsString" delphi esperará una cadena de caracteres y lo encerrará entre comillas simples. Si usas AsInteger, esperará un entero y no podrás asignar el texto " is not null ".

Podrías hacer algo similar a esto:
Código Delphi [-]
const sqlcliente = 'select * from cliente where empresa=:empresa and cadena %s';

begin
if checkboxNoNulos.Checked then 
  query1.sql.text := Format(sqlCliente, ['is not null'])
else
begin
  query1.sql.text := Format(sqlCliente, ['= :cadena']);
  query1.parambyname('cadena').AsInteger := 3;
end;

query1.parambyname('empresa').AsInteger := 5;
query1.Open;

Saludos


La franja horaria es GMT +2. Ahora son las 17:22:29.

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