Busca em campos TIMESTAMP
Galera como eu faço para efetuar uma busca utilizando em TIMESTAMP
Já tentei e naum tive êxito:
Fiz o seguinte
{Buscar os pedidos no período informado}
Var : inds, inds2 : TdateTime;
inds := dateTimePicker2.Datetime;
inds2 := DateTimePicker3.Datetime;
dmdados.IbDsPedidos.Active := false;
dmdados.IbDsPedidos.SelectSQL.Clear;
dmdados.IbDsPedidos.SelectSQL.Add(´SELECT * FROM VPEDIDOS ´);
dmdados.IbDsPedidos.SelectSQL.Add(´WHERE DATA >= :INDS´);
dmdados.IbDsPedidos.SelectSQL.Add(´ AND DATA <= :INDS2´);
dmdados.IbDsPedidos.SelectSQL.Add(´ ORDER BY DATA´);
DMDADOS.IbDsPedidos.Params[0].Value := inds;
DMDADOS.IbDsPedidos.Params[1].Value := inds2;
ah como fazer uma outra procura tembém com campos TIMESTAMP
procurando apenas a data, e naum a hora, pois ele grava as duas informações e quando e naum me lembrar da hora quero apenas procurar pela data;
Sei que deve ser fácil mas naum estou conseguindo meus comandos naum dão erros mas também naum me retornaum registros!!!
Grato pela compreensão!
Marcos Fernando
Já tentei e naum tive êxito:
Fiz o seguinte
{Buscar os pedidos no período informado}
Var : inds, inds2 : TdateTime;
inds := dateTimePicker2.Datetime;
inds2 := DateTimePicker3.Datetime;
dmdados.IbDsPedidos.Active := false;
dmdados.IbDsPedidos.SelectSQL.Clear;
dmdados.IbDsPedidos.SelectSQL.Add(´SELECT * FROM VPEDIDOS ´);
dmdados.IbDsPedidos.SelectSQL.Add(´WHERE DATA >= :INDS´);
dmdados.IbDsPedidos.SelectSQL.Add(´ AND DATA <= :INDS2´);
dmdados.IbDsPedidos.SelectSQL.Add(´ ORDER BY DATA´);
DMDADOS.IbDsPedidos.Params[0].Value := inds;
DMDADOS.IbDsPedidos.Params[1].Value := inds2;
ah como fazer uma outra procura tembém com campos TIMESTAMP
procurando apenas a data, e naum a hora, pois ele grava as duas informações e quando e naum me lembrar da hora quero apenas procurar pela data;
Sei que deve ser fácil mas naum estou conseguindo meus comandos naum dão erros mas também naum me retornaum registros!!!
Grato pela compreensão!
Marcos Fernando
Marcos Fernando
Curtidas 0
Respostas
Fabricio
22/10/2003
Qndo eu precisei buscar por datas eu tive que criar as tabelas utilizando um character set (se vc naum tiver feito isto, usei o ISO8859_1) e passei os parametros como ´.ASDATE´.
GOSTEI 0
Afarias
22/10/2003
|Qndo eu precisei buscar por datas eu tive que criar as tabelas utilizando
|um character set
o CHARACTER SET só faz sentido em campos ´string´ (char, varchar, blob tipo texto) -- campos Date ou Timestamp possuem um CHAR SET e não sofrem qualquer influência destes.
|ah como fazer uma outra procura tembém com campos TIMESTAMP
|procurando apenas a data, e naum a hora,
cast(campo_timestamp as date)
|Sei que deve ser fácil mas naum estou conseguindo meus comandos
|naum dão erros mas também naum me retornaum registros!!!
não dá erro pq não há erro. não retornam registros pq as condições na cláusula WHERE não batem com qualquer registro no banco de dados.
e, por sinal... onde está o OPEN de sua Query???
T+
|um character set
o CHARACTER SET só faz sentido em campos ´string´ (char, varchar, blob tipo texto) -- campos Date ou Timestamp possuem um CHAR SET e não sofrem qualquer influência destes.
|ah como fazer uma outra procura tembém com campos TIMESTAMP
|procurando apenas a data, e naum a hora,
cast(campo_timestamp as date)
|Sei que deve ser fácil mas naum estou conseguindo meus comandos
|naum dão erros mas também naum me retornaum registros!!!
não dá erro pq não há erro. não retornam registros pq as condições na cláusula WHERE não batem com qualquer registro no banco de dados.
e, por sinal... onde está o OPEN de sua Query???
T+
GOSTEI 0