Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

ohlele

Falha ao listar registros pela data

Recommended Posts

Olá, estou com uma dúvida.Tenho um BD Access, com uma tabela Cliente e uma coluna Data_Vencimento e esta coluna está como Data/Hora (configurada como dd/mm/aaaa)Estou fazendo a consulta assim:Select * From Cliente Where id_cliente = '"& id_cliente &"' And Data_Vencimento < '"& CDate("Data_Cadastro") &"'Estou tentando listar os cliente com pagamentos vencidos.Já tentei pelo Date, formatando a data pelo ASP com DD/MM/AAAA, não funcionaO erro as vezes aparece com: "exceção"Alguem sabe me informar como faço esta consulta, para achar os clientes vencidos?OBS: Estou cadastrando com formatação via ASP DD/MM/AAAA e usando LCID = 1040 (Brasil)Só preciso desta linha de código e saber se estou fazendo a coisa certa no bd.Este é o meu primeiro tópico. Valeu galera

Compartilhar este post


Link para o post
Compartilhar em outros sites

Para trabalhar com datas no access, tu deve colocar '#' na hora de passar o valor, isso se no banco o tipo de dados estiver como data.

 

por exemplo:

 

Select * From Cliente Where id_cliente = '"& id_cliente &"' And Data_Vencimento < '"& CDate("Data_Cadastro") &"'

 

um comentário sobre a consulta acima: Acredito que o campo id_cliente é numérico, e na consulta tu estas usando aspas simples para testar o valor. tenta usar a consulta abaixo:

 

Select * From Cliente Where id_cliente = "& id_cliente &" And Data_Vencimento < '#"& CDate("Data_Cadastro") &"#'

testa aí e qualquer coisa grita... falow!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Veja bm! Eu tenho:ex:Data_Cadastro = 01/01/2007Data_Vencimento = 20/01/2007Hoje é 28/01/2007, quero listar este registro ou os registros vencidos, ou seja, com Data_vencimento antes da data de hoje.Os outros registros >= Data Hoje vão ser A Vencer, e estes eu não quero listar, apenas os vencidos.Espero ter ajudado e aguardo sua resposta.Valeu

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta montar a data antes de fazer a consulta entao:

 

data = "20/01/2007"formataData = year(data) & "/" & Right("00" & month(data), 2) & "/" & Right("00" & day(data), 2)'dae tenta o selectSelect * From Cliente Where id_cliente = "& id_cliente &" And Data_Vencimento < '#"& formataData  &"#'

testa assim cara... falow!

Compartilhar este post


Link para o post
Compartilhar em outros sites

Valeu acredito que agora vai dar certo.Mais uma pergunta, para eu Inserir, Delete, Update uso também # ou é só eu cadastrar pegando os dados de uma string.ex: Data = "01/02/2007"ou lanço como CdateValeu - Abraços

Compartilhar este post


Link para o post
Compartilhar em outros sites

em access tu deve usar o # sempre que for trabalhar com datas nas consultas.sugiro usar aquela formatacao que eu postei ali em cima (AAAA/MM/DD) sempre que for salvar no banco, e na hora de ler formatar devolta para DD//MM/AAAA.trabelhei em sistemas que usavam access, e só depois de comecar tratar datas dessa forma, eu não me encomodei mais.falow ae!

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.