TORNAR NULA uma variável DATE
Preciso tornar nula (zerar) uma variável do tipo tDate.
Já tentei de várias formas, sem sucesso:
wData:=null;
wData:=nil;
wData:=strTOdate(´´);
wData:=strTOdate(emptyStr);
Alguém sabe como me ajudar?
Já tentei de várias formas, sem sucesso:
wData:=null;
wData:=nil;
wData:=strTOdate(´´);
wData:=strTOdate(emptyStr);
Alguém sabe como me ajudar?
Alexandre7
Curtidas 0
Respostas
Derek Roddy
02/05/2003
Tente passar zero para a variável
GOSTEI 0
Evandro Massini
02/05/2003
Amigo,
eu testei da forma como vc descreveu:
var d:TDate;
begin
d:=null;
end;
No meu caso (eu uso Delphi7) deu certo...
Até mais...
eu testei da forma como vc descreveu:
var d:TDate;
begin
d:=null;
end;
No meu caso (eu uso Delphi7) deu certo...
Até mais...
GOSTEI 0
Alexandre7
02/05/2003
[quote:a2992910db=´Derek Roddy´]Tente passar zero para a variável[/quote:a2992910db]
NÃO ADIANTA. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
NÃO ADIANTA. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
GOSTEI 0
Alexandre7
02/05/2003
[quote:4d72f3991e=´Evandro Massini´]Amigo,
eu testei da forma como vc descreveu:
var d:TDate;
begin
d:=null;
end;
No meu caso (eu uso Delphi7) deu certo...
Até mais...[/quote:4d72f3991e]
TAMBÉM NÃO DÁ CERTO. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
eu testei da forma como vc descreveu:
var d:TDate;
begin
d:=null;
end;
No meu caso (eu uso Delphi7) deu certo...
Até mais...[/quote:4d72f3991e]
TAMBÉM NÃO DÁ CERTO. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
GOSTEI 0
Evandro Massini
02/05/2003
Cara, eu acho q não entendi... Vc ta tentando provocar um erro ao gravar o registro no Interbase???
GOSTEI 0
Okama
02/05/2003
Amigo, vc não mencionou que estava gravando essa variável no Interbase, não é culpa de ninguém se não solucionaram seu problema, pois com os dados que vc forneceu, as respostas foram satisfatórias.
Se quizer ´zerar´ a data no Interbase, altere seu campo como varchar, ou não GRAVE VALOR ALGUM no campo data.
Se quizer ´zerar´ a data no Interbase, altere seu campo como varchar, ou não GRAVE VALOR ALGUM no campo data.
GOSTEI 0
Aroldo Zanela
02/05/2003
Colega,
Quando uma coluna de data possui um valor null, ela é representada por 30/12/1899. No entando se voce fizer uma consulta por meio de SQL, poderá verificar que o valor é null:
Por exemplo:
Lembrando ainda que, se você adicionar um novo registro numa tabela e não atribuir um valor para os campos datas, os mesmos são sinalizados para null, difirente no delphi onde você pode ter variáveis não sinalizadas e sinalizadas com valor null.
Quando uma coluna de data possui um valor null, ela é representada por 30/12/1899. No entando se voce fizer uma consulta por meio de SQL, poderá verificar que o valor é null:
Por exemplo:
SELECT * FROM TABELA WHERE CAMPO_DATA IS NULL
Lembrando ainda que, se você adicionar um novo registro numa tabela e não atribuir um valor para os campos datas, os mesmos são sinalizados para null, difirente no delphi onde você pode ter variáveis não sinalizadas e sinalizadas com valor null.
GOSTEI 0
Daniel
02/05/2003
[quote:a2992910db=´Derek Roddy´]Tente passar zero para a variável[/quote:a2992910db]
NÃO ADIANTA. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
NÃO ADIANTA. Ao gravar a variável no Interbase ela é gravada com a data 30/12/1899.
var data : Tdatetime;
if datetostr(data) <> '' then
begin
// grava no banco
end;
a solução é estar a variável antes da gravação
GOSTEI 0