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

 

  Fórum

  Visual Basic
Voltar
Autor Assunto:  Consulta
¨Hennyere¨
Pontos: 2843
SALVADOR
BA - BRASIL
Postada em 07/10/2005 16:25 hs         
Estou tentando criar uma consulta para retornar todos os registros de uma determinada tabela de um Db cuja campo data da tabela seja igual a data atual considerendo apenas dia e mês.
 
A formula q criei foi a seguinte:
 
"SELECT * From TblAdressBook WHERE " & DatePart("d", " & DATA & ") & " = " & DatePart("d", Now) & " AND " & DatePart("m", " & DATA & ") & " = " & DatePart("m", Now) & ""
 
Está dando erro creio que esta consulta esteja errada, mas ~b sei como fazer outra. Alguem pode me ajudar?
     
ArtSoft
SAO PAULO
SP - BRASIL
Postada em 07/10/2005 16:41 hs         
Segue amigão...

"SELECT * From TblAdressBook WHERE (((Format([TABELA].[CAMPODT],'mm/dd'))=" & Format(DATE,"mm/dd") & "'));"

Alexandre Costa
ArtSoftSystems

Skype:artsoftsystems
MSN:alexandre.artsoft@hotmail.com
artsoftsystems@uol.com.br

     
¨Hennyere¨
Pontos: 2843
SALVADOR
BA - BRASIL
Postada em 07/10/2005 17:09 hs         
Ok, funcionou! Mais ainda tenho uma dúvida:
 
Para conectar a base uso:
 
ADO
Public Sub ConectarDb()
'On Error Resume Next
    Set Db = New ADODB.Connection
    With Db
        .Provider = "Microsoft.Jet.OLEDB.4.0"
        .Properties("Data Source") = App.Path & "BaseDbAdressBook.mdb"
        .Open
    End With
    Set Rs = New ADODB.Recordset
End Sub
 
DAO
Public Sub ConectarDb()
'On Error Resume Next
    Set Db = OpenDatabase(App.Path & "BaseDbAdressBook.mdb")
End Sub

 
Usando o DAO funciona perfeitamente
strSql = "SELECT * From TblAdressBook WHERE Format(DATA,'mm/dd') Like '*" & Format(Date, "mm/dd") & "*'"
Set Rs = Db.OpenRecordset(strSql)
 
Usando o ADO não funciona
strSql = "SELECT * From TblAdressBook WHERE Format(DATA,'mm/dd') Like '*" & Format(Date, "mm/dd") & "*'"
Rs.Open strSql, Db, adOpenStatic, adLockOptimistic
 
O que está errado?

 
TÓPICO EDITADO
   
ArtSoft
SAO PAULO
SP - BRASIL
Postada em 07/10/2005 17:13 hs         
tire o LIKE e substitua pelo sinal de igual e remova os *'s.

vê se funciona assim....

Alexandre Costa
ArtSoftSystems

Skype:artsoftsystems
MSN:alexandre.artsoft@hotmail.com
artsoftsystems@uol.com.br

     
¨Hennyere¨
Pontos: 2843
SALVADOR
BA - BRASIL
Postada em 07/10/2005 17:34 hs         
Fiz Assim:
 
    strSql = "SELECT * From TblAdressBook WHERE Format(DATA,'mm/dd') = " & Format(Date, "mm/dd") & ""
    rRs.Open strSql, Db, adOpenStatic, adLockOptimistic
    While Not (rRs.EOF Or rRs.BOF)
        lstNames.AddItem vbTab & rRs.Fields!NOME & Chr(32) & rRs.Fields!SOBRENOME, , ImageList.ListImages(1).Picture
        rRs.MoveNext
    Wend
    If (rRs.EOF Or rRs.BOF) Then lstNames.ListIndex = 0
    rRs.Close
    Set rRs = Nothing
Mas não funcionou!
     
ArtSoft
SAO PAULO
SP - BRASIL
Postada em 07/10/2005 17:45 hs         
Faça assim :
 
DIM srtSQL AS STRING, Sel AS STRING
Sel = FORMAT(DATE,"DD/MM")
strSql = "SELECT * From TblAdressBook WHERE Format(DATA,'mm/dd') = '" & Sel & "'"
rRs.Open strSql, Db, adOpenStatic, adLockOptimistic
...
..
.
PS : Format(DATA,'mm/dd')  ==> ESTE NOME 'DATA' DEVERÁ SER REFERENTE AO CAMPO NA SUA TABELA ([TblAdressBook])

Alexandre Costa
ArtSoftSystems

Skype:artsoftsystems
MSN:alexandre.artsoft@hotmail.com
artsoftsystems@uol.com.br

     
Página(s): 1/2      PRÓXIMA »

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