Inserir dados hora
Boa Tarde!
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.
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
Curtidas 0
Respostas
Marcos Oliveira
24/10/2013
Deivid, boa tarde.
Segue abaixo um exemplo:
Att,
Marcos
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
Deivid Costa
24/10/2013
Deivid, boa tarde.
Segue abaixo um exemplo:
Att,
Marcos
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
Rafael Brendolan
24/10/2013
Sim. Vai depender do tipo de Campo no banco e qual banco você estará usando.
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
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
Deivid Costa
24/10/2013
Sim. Vai depender do tipo de Campo no banco e qual banco você estará usando.
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
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
Thiago Irrazabal
24/10/2013
Sim. Vai depender do tipo de Campo no banco e qual banco você estará usando.
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
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
Deivid Costa
24/10/2013
Sim. Vai depender do tipo de Campo no banco e qual banco você estará usando.
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
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
Thiago Irrazabal
24/10/2013
Sim. Vai depender do tipo de Campo no banco e qual banco você estará usando.
Crie um campo DateTime no Banco e para salvar neste formato passe 'now'.
Se não me engano 'now' passa a data + hora.
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
Graziani
24/10/2013
Boa noite,
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] ..
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
Deivid Costa
24/10/2013
Boa noite pessoal!
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!
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