Oppure

Loading
22/12/09 10:49
foralobo
salve a tutti...ho un problema con una query.
Il problema è molto semplice in quanto devo richiamare una query di questo tipo:

SELECT tbl_Clienti.* FROM tbl_Clienti WHERE NomeContatto Like '*ma*'; 


in access funziona ovviamente ma non rieco a farla funzionare in vb6 nel senso che mi da errori sugli operatori e su i tipi di dato.

al posto di ma io dovrei mettere il valore di una textbox.

sicuramente mi sfugge qualcosa di banale.

scrivendola invece in questo modo:
Query = "SELECT * From tbl_Clienti WHERE NomeContatto like " & "'*Mario*'" & ";"

(ovviamente non ha senso cosi ma è solo per specificare il modo in cui la scrivo)

non mi da errori ma non da neanche record...

dove sbeglio??
mi fornite qualche specifica su come utilizzare in vb6 le stringhe che chiamano le query?
cioè, come si usano gli operatori etc all'interno delle stringhe?

grazie
aaa
22/12/09 11:16
foralobo
Postato originariamente da foralobo:

salve a tutti...ho un problema con una query.
Il problema è molto semplice in quanto devo richiamare una query di questo tipo:

SELECT tbl_Clienti.* FROM tbl_Clienti WHERE NomeContatto Like '*ma*'; 


in access funziona ovviamente ma non rieco a farla funzionare in vb6 nel senso che mi da errori sugli operatori e su i tipi di dato.

al posto di ma io dovrei mettere il valore di una textbox.

sicuramente mi sfugge qualcosa di banale.

scrivendola invece in questo modo:
Query = "SELECT * From tbl_Clienti WHERE NomeContatto like " & "'*Mario*'" & ";"

(ovviamente non ha senso cosi ma è solo per specificare il modo in cui la scrivo)

non mi da errori ma non da neanche record...

dove sbeglio??
mi fornite qualche specifica su come utilizzare in vb6 le stringhe che chiamano le query?
cioè, come si usano gli operatori etc all'interno delle stringhe?

grazie


ho risolto usando il simbolo di percentuale al posto dell'asterisco..invb6 a quanto pare si usa quello...mi indicate qualche link dove posso veere tutte queste regole
aaa
22/12/09 14:00
Alfonso
Non capisco che tipo di database tu stia usando.
Il carattere % credo che sia per Sql Server l'equivalente del carattere * per access.
Se è access deve funzionare il carattere asterisco.
E senza aggiungere il ; alla fine della query.
Ti allego l'help in linea per l'operatore Like con riferimento ad Access.
aaa
22/12/09 21:59
gibra
Postato originariamente da foralobo:
ho risolto usando il simbolo di percentuale al posto dell'asterisco..invb6 a quanto pare si usa quello...mi indicate qualche link dove posso veere tutte queste regole


E' una questione nota, non è un problema di VB6: dipende del PROVIDER che usi.

1. Se usi ADO devi usare il %
2. Se usi DAO devi usare l'asterisco.

E dato che MS Access (ambiente di lavoro da non confondere con il database Access) usa internamente DAO ecco perchè la query con l'asterisco funziona in ambiente MS Access ma non in ambiente VB6 con ADO. :asd:
Se tu usassi DAO (cosa che sconsiglio caldamente!) al posto di ADO, la tua query funzionerebbe perfettamente.

Riguardo ai link che chiedi, basta consultare la guida di VB6. :D

Ciao
Ultima modifica effettuata da gibra 22/12/09 22:01
aaa
26/12/09 19:39
foralobo
Postato originariamente da gibra:

Postato originariamente da foralobo:
ho risolto usando il simbolo di percentuale al posto dell'asterisco..invb6 a quanto pare si usa quello...mi indicate qualche link dove posso veere tutte queste regole


E' una questione nota, non è un problema di VB6: dipende del PROVIDER che usi.

1. Se usi ADO devi usare il %
2. Se usi DAO devi usare l'asterisco.

E dato che MS Access (ambiente di lavoro da non confondere con il database Access) usa internamente DAO ecco perchè la query con l'asterisco funziona in ambiente MS Access ma non in ambiente VB6 con ADO. :asd:
Se tu usassi DAO (cosa che sconsiglio caldamente!) al posto di ADO, la tua query funzionerebbe perfettamente.

Riguardo ai link che chiedi, basta consultare la guida di VB6. :D

Ciao



grazie per la delucidazione...con la percentuale funziona poichè uso ado
aaa