Newsgroup: it.comp.lang.visual-basic
Titolo: operatore like

chi può aiutarmi con l'operatore like?
Ho un database formato access dove c'è una tabella clienti e un 
campo nome.
Sono presenti alcuni record dove il campo nome è totonno.
perchè questa query "select * from clienti where nome like 't*'" 
non restituisce nessun record ?
Volevo anche chiedervi se esiste un comando che posso lanciare 
da un file exe creato con VB6 che esegue la stessa funzione del 
comando "compatta e ripristina il database" presente in access ?
Grazie a tutti
--  
Postato da Virgilio Newsgroup: scopri i nuovi gruppi 
Eros, foto e video a 
http://newsgroup.eros.virgilio.it

 --  
Ciao
@Alex
-- 
Posted via Mailgate.ORG Server - 
http://www.Mailgate.ORG

 non restituisce nessun record ?
Prova:
like 't%'
ed evita select *, te ne potresti pentire in futuro.
-- 
Emanuele Torrenti

 comando "compatta e ripristina il database" presente in access ?
 
Dunque, tempo fa avevo scritto qs. cosetta. Guarda un po' se ti è d'aiuto.
Richiede un riferimento alla libreria MSAccess XX Objects Library (XX è la
versione di Access), oltre ai riferimenti che ho riportato nei commenti
dentro il codice.
Utilizza due metodi, con DAO o con JRO, tu puoi usare l'uno o l'altro
(all'epoca non trovai il sistema con ADO, poi in seguito non ci ho più messo
mano), basta che commenti o decommenti il relativo blocco di codice
' compatta e ripristina il database
Public Function CompactDb(ByVal DBPath As String, _
    Optional password As String) As Long
On Error GoTo ErrRoutine
    Dim NewName As String, OldName As String
    Dim NewString As String, OldString As String
    Dim dbExt As String
    CompactDb = 0
    ' rinomina il file da compattare
    NewName = DBPath
    dbExt = Right$(DBPath, 4)
    OldName = Replace(DBPath, dbExt, ".old", , , vbTextCompare)
    ' La funzione Name può essere eseguita soltanto sui file chiusi. Se il file
    ' è aperto, genera l'errore 75. Questoè untile anche quando dopo dobbiamo
    ' compattare il file, visto che non possiamo compattare un db aperto.
    Name NewName As OldName ' rinomina il file
' ' ========= Metodo con JRO ============
' ' (richiede un riferimento a MS Jet And Replication Objects (JRO) nel menu
Riferimenti)
' Dim dbEng As JRO.JetEngine
' If Not password = vbNullString Then password = ";Jet OLEDB:Database
Password=" & password
' Set dbEng = New JRO.JetEngine
' OldString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & OldName &
password
' NewString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=" & NewName &
password
' dbEng.CompactDatabase OldString, NewString ' crea un file compattato
' Set dbEng = Nothing
    ' =========== Metodo con DAO ==========
    ' (richiede un riferimento a MS DAO 3.6 Object Library nel menu Riferimenti)
    If Not password = vbNullString Then password = ";pwd=" & password
    DBEngine.CompactDatabase OldName, NewName, dbVersion40, , password
    ' ==================================
 
   ' elimina il file originale non compattato
    Kill OldName
ExitRoutine:
    Exit Function
ErrRoutine:
    CompactDb = Err.number
    Resume ExitRoutine
End Function
Spero di esserti stato utile. Ciao
--------------------------------
Inviato via 
http://arianna.libero.it/usenet/

Grazie a tutti
Il problema dell'operatore LIKE è risolto anche se non capisco 
perchè nella guida di VB6 indica come carattere jolly * e non %.
Per il compatta e ripristina, le risposte sono un pò difficili 
per me, le voglio vedere con calma.


 perchè nella guida di VB6 indica come carattere jolly * e non %.
Dipende dal layer di accesso ai dati utilizzato.
DAO vuole * e ? come nel DOS, ADO vuole % e _.
Ciao
--
Reporting tool: 
http://www.neodatatype.net