MarioG ha scritto:
Ho provato anche così ma non funziona
Perchè, come ti avevo scritto, quello era solo il PRIMO errore.
Ora vediamo il SECONDO errore:
MarioG ha scritto:
QueryGridDS = "select cognome, nome, idsoggetto from Persone INNER JOIN Id ON Persone.idsoggetto = Id.idsoggetto INNER JOIN Indirizzi ON Id.idpaese = Indirizzi.idpaese where (Persone.cognome = " Rossi ")"
che è qui:
where (Persone.cognome = " Rossi ")
1. In una query non si usano i doppi apici, ma i singoli apici
2. la stringa di ricerca contiene 2 spazi (in testa e in coda) e dubito che il valore sia indicato così.
Infine, per le stringhe il valore va sempre formattato con i doppi apici, usando la funzione Replace().
In sostanza, dovrebbe diventare così:
where Persone.cognome = '" & Replace("Rossi", "'", "''") & "'"
In ogni caso, tutto sto discorso è sbagliato, perchè si devono usare i
Command con relativi
Parametri e tutti i problemi di formattazione di stringhe e date non esisterebbero, perchè è il Command che provvede a fare tutto da solo.
Ma comunque la stringa SQL devi essere tu a scriverla correttamente, ovviamente.
Vedi questo articolo:
VB6: Command e Parameter in ADODB
http://nuke.vbcorner.net/Articoli/VB60/ADOParametrieaffini/tabid/85/Default.aspx