Newsgroup: it.comp.lang.visual-basic
Titolo: Istruzione SQL...aiuto.

Salve,
guardate un attimo qua:
SELECT * FROM pippo WHERE titolo LIKE 'pi*'
perchč se passo questa stringa come istruzione sql nel mio programma
non mi trova una mazza, e se la provo da un altra parte funziona?
Quello che dovrebbe restituirmi sono due record, pippo1 e pippo2. 
Per accedere al db uso ADO.
Saluti...


ADO non vuole * ma %
Prova cosě:
SELECT * FROM pippo WHERE titolo LIKE 'pi%'
Ciao
Sirjo

 wrote in message
news:3a3dd81c...@news.enter.it...


SELECT * FROM pippo WHERE titolo LIKE 'pi%'
Ah...non la sapevo stà cosa...ma l' asterisco non dovrebbe essere un
carattere "standard" come gli altri caratteri jolly?
Saluti...

SELECT * FROM pippo WHERE titolo LIKE 'pi%'
Si si, funziona funziona...grazie :))
Saluti...

 ha scritto

..natalizi :)
* e ? sono jolly in dos (e famiglia ms) e (in quanto, credo, derivanti da)
unix.
in sql lo standard sarebbe il %.
e' ms che come al solito interpreta gli standrd a m[odo] s[uo].
anche se in questo caso un qualche senso l'avrebbe.

 anche se in questo caso un qualche senso l'avrebbe.
 
Si ma scusa, ADO l' ha inventato la ms, se per ms i caratteri jolly sono sempre stati quelli...mo perchè in ADO, quando poi anche in DAO, l' asterisco funziona??
E poi, l' sql l' asperisco se lo prende, quindi qualcosa che non è il suo standard lo capisce uguale...
insomma ma questo ADO è proprio stupido!!!
---------------------------------------------------
Inviato da: 212.29.130.175, via 
http://usenet.iol.it
 

 insomma ma questo ADO è proprio stupido!!!
ammetto che ho avuto quest'impressione anch'io.
provo a mettere le cose in fila, per quel che sono riuscito a origliare:
-- ms utilizza *
-- sql (standard credo sql92) utilizza %
-- ms (ricordarsi sempre la frase "internet non esistera' senza ms") fa
access e dice: chissefrega ? io uso * e % -- (dao mi sembra un bel po'
access-oriented, cioe' mercato-pc-oriented).
-- il proprietario di oracle, dbms sql anti-ms, diventa l'uomo piu' ricco
del pianeta.
-- visto che sqlserver da solo non basta per conquistare i db (specie quelli
che su un pc stanno stretti), ms pensa bene di spingere
sull'interfacciamento via applicativi (quindi molto vb) e mette fuori ado
per connettersi a _qualunque_ db sql-compliant, lasciando il codice il piu'
immutato possibile nell'eventuale passaggio da un dbms all'altro. per far
questo rinuncia anche a un po' di prestazioni (quello che hai constatato: e'
piu' lento). l'idea non e' male, ma costringe ms a ringoiarsi velocemente
(oltre a msn) l'asterisco.
non so sqlserver che ruolo abbia avuto in questa sceneggiata -- sempre che
sia andata cosi'.
ciao, a.

 percentuale?
Per il linguaggio SQL lo standard è il %
Non confondere ADO, DAO e SQL che sono tre cose diverse.
L'istruzione SELECT non viene compilata dal VB e quindi non viene
interpretata da ADO,
ma viene passata così com'è (infatti è una stringa) al provider, il quale
la compila ed esegue quello che deve fare sul database.
Ms fino al DAO ha usato un SQL che non era proprio standard, ma un po'
alla volta ci sta andando, proprio per la filosofia
dell'Universal Data Access, per il quale (in teoria)
bast ache cambi provider, e quindi la stringa di connessione e tutto
il programma dovrebbe funzionare ugualmente.
Per questo almeno l'SQL dovrebbe essere standard.
Ciao
Sirjo