pgmador Postado Outubro 3, 2004 Denunciar Share Postado Outubro 3, 2004 Pessoal, seguinte,Procurei aqui, e não encontrei.Mostrar a data no nosso formato (dd/mm/aa) não é o problemaO que não consigo, é gravar data no BD.Estou usando SQLServer.Adicionei um campo data na minha tabela (datetime).Faço, por exemplo.data=date()oudata=getdate; (com javascript)Ao gravar esta variável no banco, ela só grava como 1/1/1900.Estou fazendo a inclusão da seguinte maneira. rs.Open "INSERT INTO tabela (data) VALUES ('"&data&"')",Conexao Minha pergunta são 2:1. Como fazer pra gravar a data atual, corretamente?2. Como fazer para gravar uma data que foi preenchida pelo usuário, em um formulário?Abraços, Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 davidmg Postado Outubro 3, 2004 Denunciar Share Postado Outubro 3, 2004 Gravar data atual: <% dia = Day(date()) if dia < 10 then dia = "0" & dia mes = Month(date()) if mes < 10 then mes = "0" & mes ano = Year(date()) Data = dia & "/" & mes & "/" & ano rs.Open "INSERT INTO tabela (data) VALUES ('"&data&"')",Conexao %> No bd no campo data, sempre use como TEXTO okTesta aí.Agora pra gravar a data do usuário, tenho que saber como você está recebendo os dados do usuario no formulálio.....mostra ae pra nós.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pgmador Postado Outubro 3, 2004 Autor Denunciar Share Postado Outubro 3, 2004 Fala davidmg,Seguinte... aí que está a questão.Eu gravando no BD, a data como texto (e desta maneira que você colocou, eu já faço), não tenho como ordenar a tabela pela campo data corretamente.E se eu gravar no BD, como datetime, eu posso ordenar corretamente.Por isso queria saber como fazer essa gravação em datetime.Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 davidmg Postado Outubro 3, 2004 Denunciar Share Postado Outubro 3, 2004 Então, mas não é assim que você quer gravar a data:03/10/2004Não é assim?David Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pgmador Postado Outubro 3, 2004 Autor Denunciar Share Postado Outubro 3, 2004 David, isso, em campo texto, eu já faço.O que quero é justamente gravar em campo datetime.Porque preciso ordenar por data.Se eu gravar em texto, por exemplo, uma ordenação poderia ficar errada. Por exemplo, 02/01/2004 vir antes de 10/09/2004, porque começa com zero, que é menor que 1. Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 davidmg Postado Outubro 4, 2004 Denunciar Share Postado Outubro 4, 2004 David, isso, em campo texto, eu já faço.O que quero é justamente gravar em campo datetime.Porque preciso ordenar por data.Se eu gravar em texto, por exemplo, uma ordenação poderia ficar errada. Por exemplo, 02/01/2004 vir antes de 10/09/2004, porque começa com zero, que é menor que 1. Bom, eu tb preciso ordenar por data e faço da seguinte forma:Na tabelo crios 2 campos, um chamado Data e outro chamado DatapesqNo campo Data eu gravo a data normal: 02/10/2004No campo Datapesq eu gravo invertido o mes e o dia: 10/02/2004E mando ordenar pelo Datapesq e funciona direitinho.....faz uns testes aí pra você ver e depois me fala....David Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 rzilnet Postado Outubro 4, 2004 Denunciar Share Postado Outubro 4, 2004 use esta rotina no seu form:<%dim dd, mm, aaFunction FormataData(data)dd = Day(data)mm = Month(data)aa = Year(data)if len(dd) = 1 then dd = "0" & ddif len(mm) = 1 then mm = "0" & mmFormataData = CStr(dd & "/" & mm & "/" & aa)End Function%>se não funcionar, me reporte.Boa sorte! Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pgmador Postado Outubro 5, 2004 Autor Denunciar Share Postado Outubro 5, 2004 Beleza...vou fazer aqui, e me parece que dá certo simDe qualquer forma, sei que existe uma forma de gravar no BD em formato datetime.Alguém saberia dizer se isto teria alguma coisa a ver com a configuração do meu BD?Abraços a todos Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Outubro 5, 2004 Denunciar Share Postado Outubro 5, 2004 Brothers !!Bem, vamos ver:Para retornar a data atual, e hora junto, você pode usar o comando NOW<%= now()%>isso deve mostra data/hora.Aí, poderia inserir este NOW no banco, no formato data/hora, que deve funcionar.Porém, se você quiser fazer diferente, e tratar todos os dados como STRING, e depois, quando for inserir no banco, converter para DATA/Hora, basta usar CDATE na variavel, e mandar inserir no banco. Deste modo tb deve funcionar!A duvida era essa?Abraços Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Outubro 7, 2004 Denunciar Share Postado Outubro 7, 2004 Só pra 'engordar' o tópico de conhecimento:Resolva problemas com datas gravadas com formato string (texto)t+ Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 pgmador Postado Outubro 12, 2004 Autor Denunciar Share Postado Outubro 12, 2004 Aí Dark,Agora o banco está aceitando apenas com Reques.Form, sem o CDate... Vai entender....Pode Fechar este tópico!!Abração Citar Link para o comentário Compartilhar em outros sites More sharing options...
0 dark0 Postado Outubro 12, 2004 Denunciar Share Postado Outubro 12, 2004 Aí Dark,Agora o banco está aceitando apenas com Reques.Form, sem o CDate... Vai entender....Pode Fechar este tópico!!Abração isso pode ser porque agora, a variavel que esta sendo colocada no banco, esta no formato de data! Citar Link para o comentário Compartilhar em outros sites More sharing options...
Pergunta
pgmador
Pessoal, seguinte,
Procurei aqui, e não encontrei.
Mostrar a data no nosso formato (dd/mm/aa) não é o problema
O que não consigo, é gravar data no BD.
Estou usando SQLServer.
Adicionei um campo data na minha tabela (datetime).
Faço, por exemplo.
data=date()
ou
data=getdate; (com javascript)
Ao gravar esta variável no banco, ela só grava como 1/1/1900.
Estou fazendo a inclusão da seguinte maneira.
Minha pergunta são 2:
1. Como fazer pra gravar a data atual, corretamente?
2. Como fazer para gravar uma data que foi preenchida pelo usuário, em um formulário?
Abraços,
Link para o comentário
Compartilhar em outros sites
11 respostass a esta questão
Posts Recomendados
Participe da discussão
Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.