Como comparar params boolean...
Tenho a seguinte senteça SQL:
onde eu vou passar [color=red:fd9e21c1bb]True[/color:fd9e21c1bb] para [color=red:fd9e21c1bb]:pbEmptyData[/color:fd9e21c1bb] caso eu não queira filtrar por data.
Sendo que não está dando certo, me retorna o seguinte erro:
Tenho consciencia de que estou fazendo errando no trecho [color=red:fd9e21c1bb]or :pbEmptyData = True[/color:fd9e21c1bb]
Como fazer para corrigir isto sem fugir a esta lógica?
Desde já sou grato.
SELECT Evento.DESCRICAO, Registro.HORA, Registro.DATA, Registro.ID_EVENTO, Registro.ID_REGISTRO, Registro.ID_USUARIO FROM REGISTRO Registro LEFT JOIN EVENTO Evento ON (Registro.ID_EVENTO = Evento.ID_EVENTO) WHERE (Registro.ID_USUARIO = :piID_USUARIO) AND (Registro.DATA = :pdDATA or :pbEmptyData = True) ORDER BY Registro.HORA
onde eu vou passar [color=red:fd9e21c1bb]True[/color:fd9e21c1bb] para [color=red:fd9e21c1bb]:pbEmptyData[/color:fd9e21c1bb] caso eu não queira filtrar por data.
Sendo que não está dando certo, me retorna o seguinte erro:
Database server error: Column unknown
TRUE
At line 6, column 35.
Tenho consciencia de que estou fazendo errando no trecho [color=red:fd9e21c1bb]or :pbEmptyData = True[/color:fd9e21c1bb]
Como fazer para corrigir isto sem fugir a esta lógica?
Desde já sou grato.
Aloizio Castro
Curtidas 0
Respostas
Night_man
05/10/2006
voce nao pode montar o select de maneira diferente, caso queira comparar com a data coloca o where de data senao nao?!
GOSTEI 0
Aloizio Castro
05/10/2006
Posso, mas fazia assim com BDE e funcionava, achei que tb funcionaria com DBX!!!
GOSTEI 0
Night_man
05/10/2006
SELECT
Evento.DESCRICAO,
Registro.HORA,
Registro.DATA,
Registro.ID_EVENTO,
Registro.ID_REGISTRO,
Registro.ID_USUARIO
FROM
REGISTRO Registro
LEFT JOIN EVENTO Evento ON
(Registro.ID_EVENTO = Evento.ID_EVENTO)
WHERE
(Registro.ID_USUARIO = :piID_USUARIO) AND
(Registro.DATA = :pdDATA or :numero = 1)
ORDER BY
Registro.HORA
trocar de data por inteiro
parambyname(´numero´).asinteger = 1;
Evento.DESCRICAO,
Registro.HORA,
Registro.DATA,
Registro.ID_EVENTO,
Registro.ID_REGISTRO,
Registro.ID_USUARIO
FROM
REGISTRO Registro
LEFT JOIN EVENTO Evento ON
(Registro.ID_EVENTO = Evento.ID_EVENTO)
WHERE
(Registro.ID_USUARIO = :piID_USUARIO) AND
(Registro.DATA = :pdDATA or :numero = 1)
ORDER BY
Registro.HORA
trocar de data por inteiro
parambyname(´numero´).asinteger = 1;
GOSTEI 0
Micheus
05/10/2006
[b:62ff060579]_anderson_[/b:62ff060579], vc não informou em que banco está utilzando este comando, mas em todos os casos, se realmente precisar fazer desta forma, troque TRUE por 1
[]s
[]s
GOSTEI 0
Micheus
05/10/2006
Foi mal. Peguei para edição e demorei. Não tinha visto que já tinha uma resposta.
GOSTEI 0