Gravar Data em DB

Delphi

15/03/2003

Alguem Poderia me ensinar Como Faço para Gravar um Data que Esta no Edit1.Text Para Um Campo Data na Tabela .DB, Cuja campo esta definido para D.


Ageualves

Ageualves

Curtidas 0

Respostas

Aroldo Zanela

Aroldo Zanela

15/03/2003

Alguem Poderia me ensinar Como Faço para Gravar um Data que Esta no Edit1.Text Para Um Campo Data na Tabela .DB, Cuja campo esta definido para D.

Ageu,

Já que você não está utilizado componentes ´Data-Aware´, eu recomenfo utilizar o DataTimePicker que fica na paleta Win32 e você faz da seguinte forma:
Exemplo:

myTabela.FieldByName("NOME_CAMPO").AsDate := DateTimePicker1.Date;



GOSTEI 0
Marcelo

Marcelo

15/03/2003

Ae cara.. blz.... se voce ainda nao consegui tente o seguinte codigo...
....
NomeTabela.FieldByName(´DATA´).AsDate:=EData.Text;
.....

mas esse codigo so funciona se for uma data valida, por acaso se for um dia 29/02 de um ano que nao é bissexo.... da pau....

t+


GOSTEI 0
Ageualves

Ageualves

15/03/2003

Valeu Marcelo, Vou Seguir Sua Dica !!! :)



Ae cara.. blz.... se voce ainda nao consegui tente o seguinte codigo... .... NomeTabela.FieldByName(´DATA´).AsDate:=EData.Text; ..... mas esse codigo so funciona se for uma data valida, por acaso se for um dia 29/02 de um ano que nao é bissexo.... da pau.... t+



GOSTEI 0
Ageualves

Ageualves

15/03/2003

[b:0039e9f35c]NomeTabela.FieldByName(´DATA´).AsDate:=EData.Text;
Não Funciona.

Assim:

NomeTabela.FieldByName(´DATA´).AsDateTime:=EData.Text;
Tbem não funciona!!
[/b:0039e9f35c]


GOSTEI 0
Marcelo

Marcelo

15/03/2003

[b:8a854cfc53]NomeTabela.FieldByName(´DATA´).AsDate:=EData.Text; Não Funciona. Assim: NomeTabela.FieldByName(´DATA´).AsDateTime:=EData.Text; Tbem não funciona!! [/b:8a854cfc53]



Talves seje o modo q vc ta formatando a data... tente a seguinte funcao...

[b:8a854cfc53]function[/b:8a854cfc53] formatadata(data : [b:8a854cfc53]String[/b:8a854cfc53]):[b:8a854cfc53]String[/b:8a854cfc53];
[b:8a854cfc53]begin[/b:8a854cfc53]
Result := Copy(Data,1,2)+´/´+Copy(Data,3,2)+´/´+Copy(Data,5,4);
[b:8a854cfc53]end[/b:8a854cfc53];

E no evento OnExit do EData.Text coloque o seguinte codigo....

[b:8a854cfc53]procedure[/b:8a854cfc53]...
[b:8a854cfc53]begin[/b:8a854cfc53]
EData.Text:=formatadata(EData.Text);
[b:8a854cfc53]end[/b:8a854cfc53];

Isso vai formatar sua data da maneira certa tipo: 15032003 para 15/03/2003......

at+vr......


GOSTEI 0
Aroldo Zanela

Aroldo Zanela

15/03/2003

[b:85c81836e2]NomeTabela.FieldByName(´DATA´).AsDate:=EData.Text; Não Funciona. Assim: NomeTabela.FieldByName(´DATA´).AsDateTime:=EData.Text; Tbem não funciona!! [/b:85c81836e2]


Tem razão, o primeiro não funciona porque fieldbyname não possui o método AsDate e o segunto não pode atribuir string para data, então:

Tabela.FieldByName(´Data´).Value := StrToDate(EData.Text);



GOSTEI 0
Ageualves

Ageualves

15/03/2003

Mutio Obrigado Pessoal, Pelas Dicas.
Acho que agora vai Funcionar !!

[]


GOSTEI 0
POSTAR