Fórum Inserir dados hora #459401
24/10/2013
0
To fazendo uma aplicação em delphi e to precisando de uma ajuda. Queria saber como eu faço para no momento que eu realizar o cadastro do cliente o sistema pega a hora e data atual e grave no banco de dados. Estou utilizando o banco de dados e o campo q eu quero armazer a data e hora e do tipo datetime.
Deivid Costa
Curtir tópico
+ 0Posts
24/10/2013
Marcos Oliveira
Segue abaixo um exemplo:
procedure TForm1.Button1Click(Sender: TObject);
var
Hora: String;
Data: TDate;
begin
Data := Date;
Hora := TimeToStr(Time);
// Aqui só estou mostrando na tela. Com as variáveis em mãos, você pode gravar no seu banco.
ShowMessage('Data: ' + DateToStr(Data) + ' - Hora: ' + Hora);
end;
Att,
Marcos
Gostei + 0
24/10/2013
Deivid Costa
Segue abaixo um exemplo:
procedure TForm1.Button1Click(Sender: TObject);
var
Hora: String;
Data: TDate;
begin
Data := Date;
Hora := TimeToStr(Time);
// Aqui só estou mostrando na tela. Com as variáveis em mãos, você pode gravar no seu banco.
ShowMessage('Data: ' + DateToStr(Data) + ' - Hora: ' + Hora);
end;
Att,
Marcos
tem como eu gravar essa informações todas juntas tipo: AAAA-MM-DD HH:MM:SS ????
Gostei + 0
24/10/2013
Rafael Brendolan
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
Gostei + 0
24/10/2013
Deivid Costa
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
O Banco é o SQL Server o tipo do campo é datetime.
como seria o comando para inserir AAAA-MM-DD HH:MM:SS???
Gostei + 0
24/10/2013
Thiago Irrazabal
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
O Banco é o SQL Server o tipo do campo é datetime.
como seria o comando para inserir AAAA-MM-DD HH:MM:SS???
Não uso SQL Server mas, passar isso para o teu campo não funciona ?
FormatDateTime('yyyy-mm-dd hh:mm:ss', now);
Att,
Thiago Irrazabal de Oliveira.
Gostei + 0
25/10/2013
Deivid Costa
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
O Banco é o SQL Server o tipo do campo é datetime.
como seria o comando para inserir AAAA-MM-DD HH:MM:SS???
Não uso SQL Server mas, passar isso para o teu campo não funciona ?
FormatDateTime('yyyy-mm-dd hh:mm:ss', now);
Att,
Thiago Irrazabal de Oliveira.
Não deu certo....
Tentei fazer dessa maneira:
ADOQuery1.Active:=False;
ADOQuery1.SQL.Clear;
nome:=edt_nome.Text;
ADOQuery1.SQL.Add('insert into pacientes (nome, rg, cpf, estado_civil, nascimento, sexo, cep, endereco, numero, bairro, cidade, uf, telefone, celular) values (('+''''+edt_nome.Text+''''+'),('+''''+edtm_rg.Text+''''+'),('+''''+edtm_cpf.Text+''''+'),('+''''+cbox_est_civ.Items[cbox_est_civ.ItemIndex]+''''+'),('+''''+edtm_nasc.Text+''''+'),('+''''+cb_sexo.Items[cb_sexo.ItemIndex]+''''+'),('+''''+edtm_cep.Text+''''+'),('+''''+edt_endereco.Text+''''+'),('+''''+edt_numero.Text+''''+'),('+''''+edt_bairro.Text+''''+'),('+''''+edt_cidade.Text+''''+'),('+''''+cb_uf.Items[cb_uf.ItemIndex]+''''+'),('+''''+edtm_telefone.Text+''''+'),('+''''+edtm_celular.Text+''''+'))');
ADOQuery1.Parameters.ParamByName('insert into pacientes(data_cadast)').value := Now;
ADOQuery1.ExecSQL;
Está correto??? Tem alguma sugestão???
Gostei + 0
26/10/2013
Thiago Irrazabal
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
O Banco é o SQL Server o tipo do campo é datetime.
como seria o comando para inserir AAAA-MM-DD HH:MM:SS???
Não uso SQL Server mas, passar isso para o teu campo não funciona ?
FormatDateTime('yyyy-mm-dd hh:mm:ss', now);
Att,
Thiago Irrazabal de Oliveira.
Não deu certo....
Tentei fazer dessa maneira:
ADOQuery1.Active:=False;
ADOQuery1.SQL.Clear;
nome:=edt_nome.Text;
ADOQuery1.SQL.Add('insert into pacientes (nome, rg, cpf, estado_civil, nascimento, sexo, cep, endereco, numero, bairro, cidade, uf, telefone, celular) values (('+''''+edt_nome.Text+''''+'),('+''''+edtm_rg.Text+''''+'),('+''''+edtm_cpf.Text+''''+'),('+''''+cbox_est_civ.Items[cbox_est_civ.ItemIndex]+''''+'),('+''''+edtm_nasc.Text+''''+'),('+''''+cb_sexo.Items[cb_sexo.ItemIndex]+''''+'),('+''''+edtm_cep.Text+''''+'),('+''''+edt_endereco.Text+''''+'),('+''''+edt_numero.Text+''''+'),('+''''+edt_bairro.Text+''''+'),('+''''+edt_cidade.Text+''''+'),('+''''+cb_uf.Items[cb_uf.ItemIndex]+''''+'),('+''''+edtm_telefone.Text+''''+'),('+''''+edtm_celular.Text+''''+'))');
ADOQuery1.Parameters.ParamByName('insert into pacientes(data_cadast)').value := Now;
ADOQuery1.ExecSQL;
Está correto??? Tem alguma sugestão???
Muda essa linha
ADOQuery1.Parameters.ParamByName('insert into pacientes(data_cadast)').value := Now;
Coloca assim vê se funciona
ADOQuery1.Parameters.ParamByName('insert into pacientes(data_cadast)').value := FormatDateTime('mm/dd/yyyy hh:mm:ss', now);
Att,
Thiago Irrazabal de Oliveira.
Gostei + 0
26/10/2013
Graziani
só uma dica, não pegue a data e hora do sistema, use o date e hora do BANCO DE DADOS. Porque o usuário não pode modificar...
SQL SERVER
SELECT GETDATE() AS [GETDATE] ..
Gostei + 0
26/10/2013
Deivid Costa
Consegui resolver o problema. Com o comando:
ADOQuery1.SQL.Add('insert into pacientes (data_cadast)values((GETDATE()))');
Funcionou certinho!
Muito obrigado pela ajuda de todos, valew!
Gostei + 0
Clique aqui para fazer login e interagir na Comunidade :)