USUÁRIO:      SENHA:        SALVAR LOGIN ?    Adicione o VBWEB na sua lista de favoritos   Fale conosco 

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Será que alguém pode me ajudar com essa SQL
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
Postada em 13/04/2007 17:03 hs            
Galera é o seguinte, estou querendo fazer uma busca entre datas utilizando o data, só que estou com um pequeno problema, o sql não está me retornando o valor corretamente
Data1.DatabaseName = App.Path & "ota_fiscal.mdb"
Data1.RecordSource = "select * from entrada where dataemissao between " & Text1.Text & " and " & Text2.Text
Data1.refresh ' até aqui tudo bem agora quando vou jogar para o primeiro registro
   para iniciar a exibição no meu grid
data1.recordset.movefirs t ' aqui ele fala que não existe dados ( no current record )
Resultado no DEBUG ( Immediate )
select * from entrada where dataemissao between 01/01/2007 and 31/12/2007 - não apresentou erro algum
 
Tentei também o código
Data1.RecordSource = "select * from entrada where dataemissao >=" & Text1.Text & " and dataemissao <=" & Text2.Text
data1.refresh
Resultado na tela do DEBUG ( Immediate )
select * from entrada where dataemissao >=01/01/2007 and dataemissao <=31/12/2007 - não apresentou erro algum
Quando tentei jogar para o primeiro registro deu a mesma coisa
 
Também tentei o código
Data1.RecordSource = "select * from entrada where dataemissao >=" & Text1.Text
data1.refresh
Nesse ele me retornou no grid, 40 linhas que são realmente o que tenho no bando de dados
Porém quando eu inverti o sinal
Data1.RecordSource = "select * from entrada where dataemissao <=" & Text2.Text
data1.refresh
Ele deu o mesmo erro dos outros códigos.Porque será que ele não está conseguindo fazer a comparação da data menor com a maior ?
A data de emissão das minhas notas estão entre 15/03/2007 a 14/04/2007 e eu estou colocando a data de 01/01/2007 á 31/12/2007
Tentei também colocar o cdate na frente dos text, na tentativa dele não estar entendo o valor como data, só que continuou dando o mesmo erro
 
Será que alguém pode me ajudar ? Emoções
 
Abraços
     
LCRamos
Pontos: 2843
GOIANIA
GO - BRASIL
Postada em 13/04/2007 20:18 hs            
Primeiro inverta o formato da sua data para o formato americano, jogue em um a string, e use o between com "*"
Exemplo:
Dim sINICIO As String
Dim sFINAL As sTRING
 
sINICIO = "*2007/04/31*"
sFINAL = "*2007/12/31*"
sSQL = "Select * From Tabela Where DATAEMISSAO"
sSQL = sSQL & " Between " & sINICIO & " AND " & sFINAL
 
vlu//
     
Álvaro
Pontos: 2843
GUARULHOS
SP - BRASIL
ENUNCIADA !
Postada em 16/04/2007 09:45 hs            
Valeu LCamos, abração !!!
   
Página(s): 1/1    

CyberWEB Network Ltda.    © Copyright 2000-2025   -   Todos os direitos reservados.
Powered by HostingZone - A melhor hospedagem para seu site
Topo da página