Newsgroup: it.comp.lang.visual-basic
Titolo: Query in VB5.0

Scusate ma ho un piccolo problema !
Premetto che sono alle prime armi con le Query a parte questo ora spiego
cosa
devo fare :
 Io devo esguire una query in un database e ho scritto il seguente codice
Private Sub Filtra_Click()
Dim Ricerca As String
Ricerca = "[" & Combo1.Text & "]" & " like " & "'" & Trim(txtCerca.Text) &
"'"
If Trim(txtCerca.Text) <> "" Then
    frmPrincipale.Data1.RecordSource = "Select * from [Tabella1] where " &
Ricerca
    frmPrincipale.Data1.Refresh
Else
    MsgBox "La casella di ricerca deve contenere un valore !", vbInformation
+ vbOKOnly, "INFORMAZIONE"
End If
End Sub
il problema č che funzione tutto OK
ma come faccio a ripristinare tutto il database ?
con un altra query con ricerca  "*"  trova un campo vuoto e cosě rimane
fuori dal filtro
Come posso fare ?
Grazie anticipatamente !

 Grazie anticipatamente !
puoi provare
Select * from [Tabella1]
eventualmente data1.refresh (o data1.recordset.refresh, mai che mi ricordi)
e se hai una dbgrid (controlla)
dbgrid.rebind
hth, pal
--
andrea dot palazzi at tin dot it
free vb/sw: 
http://www.comune.modena.it/cittadini/apal/html/

 fuori dal filtro
Non ho capito: se in txtCerca metti un asterisco cosa succede? Credo
dovrebbe darti tutti i record. Perche' non ti va bene? Cosa intendi con
"trova un campo vuoto"? Intendi forse:
WHERE Campo1 Like 'Pippo': ti restituisce tutti i 'Pippo'
ma
WHERE Campo1 Like '*': ti restituisce tutti ma anche quelli che non vuoi
vedere, es. i vuoti, ovvero quelli con Campo1 vuoto?
Ma i vuoti come sono "vuoti"? Se fossero Null o stringa nulla ("") credo (ma
non sono sicurissimo) che la query con Campo1 Like '*' non dovrebbe
mostrali. Se, invece, i "vuoti" fossero pieni di una stringa di caratteri
spazio, per esempio 20, farei cosi':
Ricerca _
  = "[" & Combo1.Text & "]" _
  & " like " _
  & "'" & Trim(txtCerca.Text) & "'" _
  & "[" & Combo1.Text & "]" _
  & " <> " _
  & "'" & String$(20) & "'"
--
Ciao.
Maurizio

Il problema è che se faccio così:
select * from [tabella1] where [Campo1] like ""
o
select * from [tabella1] where [Campo1] like "*"
tutti i campi "null" non vengono visualizzati !

 tutti i campi "null" non vengono visualizzati !
non capisco. se li vuoi tutti, null compresi,, non basta
select * from [tabella1]
?

 tutti i campi "null" non vengono visualizzati !
Infatti. E' proprio cosi' che funziona. Te l'avevo anche scritto. Quindi tu
vuoi vedere TUTTI i record. Il problema te lo da' LIKE. Io farei cosi':
Private Sub Filtra_Click( _
)
  Call Filtra
End Sub
Private Sub Filtra( _
)
Dim strCerca As String
Dim strSQL   As String
  strCerca = Trim$(txtCerca.Text)
  If Len(strCerca) Then
    strSQL = "SELECT * FROM [Tabella1]"
    If strCerca <> "*" Then
      strSQL _
        = strSQL _
        & " WHERE " & "[" & Combo1.Text & "]" _
        & " Like " & "'" & strCerca & "'"
    End If
    strSQL = strSQL & ";"
    With frmPrincipale.Data1
      .RecordSource = strSQL
      .Refresh
    End With
  Else
    Call MsgBox( _
      "La casella di ricerca deve contenere un valore!" _
    , vbInformation + vbOKOnly _
    , "INFORMAZIONE")
  End If
End Sub
--
Ciao.
Maurizio

Grazie a tutti per l'aiuto sono riuscito a risolvere il problema !
Scusate se non mi sono fatto capire subito ma sono alle prime armi con
le query !
Ora però ho un'altra question.
Se io dovessi ricercare in un campo tutto quello che inizia con ......
cosa posso utilizzare una query o un findfirst ?
ancora grazie del grande aiuto che mi date !
Grazie Andrea


-------------
Io ho provato ma mi trova solo i campi uguali
intendo invece trovare tutti i campi che ad esempio iniziano con "Ric"
tras...@iol.it
http://users.iol.it/trasibilo

 > > Ora perň ho un'altra question.
