Newsgroup: it.comp.appl.access
Titolo: Ancora Docmd.RunSQL... non funziona :(

O son io che non son buono a nulla oppure non mi funziona su nessun
computer che provo (con Access 2000 con o senza SP...)
Se provo a fare anche una semplicissima:
Docmd.RunSQL ("SELECT * FROM [nometabella]")
non funziona un bel niente, mi dà 
"Un'azione EseguiSQL richiede un argomento costituito da un'istruzione
SQL"
Accidentaccio era comodo questo metodo :(
Ah.. neanche la createquery funziona... :-|
Qualcuno sarebbe così gentile da dirmi dove sbaglio o magari da
mandarmi un piccolissimo esempio in mail (o magari dove recuperarlo)?
Togliete NOSPAMME per rispondere... grazie :(
Fly


Ciao,
non ti sto prendendo in giro ma, hai provato a togliere le parentesi? E il
; alla fine hai provato a metterlo?
Non ho idea di cosa possa essere ma io le scrivo in qs. modo e vanno prova e
fai sapere.
Ripeto non sto prendendo in giro.
Ciao Alessandro

prova cosi'
dim Nomechetipare as string
Nomechetipare = "stringa sql
copiata pari pari da qbe"
DoCmd.RunSQL (Nomechetipare)
a me funge....
ciao
Alex
--------------------------------
Inviato via 
http://usenet.iol.it
 

; alla fine hai provato a metterlo?
Già provato.. leggi qualche post più in sù... ho già chiesto una mano
ma tutti i suggerimenti sono inutili.. forse sono proprio che io che
sbaglio qualcosa... :(
Creo una tabella, 2 campi.
Creo una maschera (tutto semplicemente), inserisco un pulsante, vado
sotto gli eventi (su click) mi chiede se modulo,macro o codice, scelgo
codice, e poi quando clicco mi dà quel maledetto errore :(
Fly

Alex
Fly

mi spieghi cosa c'è che non funge?
la mia istruzione sql funge regolarmente (salvo che se hai abilitato i
warnings ti chiede che vuoi fare).
in realtà via codice Access elabora semplicemente la stringa come la passi ,
l'ho riprovata e non mi da'
errore.
io sono solito fare così
Dim alex As String
alex = "SELECT Pazienti.* FROM Pazienti;"
DoCmd.RunSQL (alex)
Riprova....
(ti ripeto l'ho testata..)
Ciao
Alex

Alex
ciao... plzzz il file in mail plzzz :(
Fly


Io non sono un esperto e stavo seguendo con interesse questi post.
Tra me e me pensavo, ma se funziona a tutti perché FlyZone non ci riesce...
adesso ci provo anche io.
Detto fatto, una tabella qualsiasi, una maschera nuova con un solo pulsante,
evento click, codice:
Docmd.RunSQL ("SELECT * FROM [nometabella];")
Risultato?
LO STESSO IDENTICO MESSAGGIO DI ERRORE
"Un'azione EseguiSQL richiede un argomento costituito da un'istruzione SQL"
Così, mal comune mezzo gaudio, mi sono iscritto al Club dei buoni a nulla ;)
presieduto da FlyZone.
Chi ci svela l'arcano?
Filippo

Avete ragione,
il mio ragionamento funziona se la query non è di selezione ma di comando  o
inserimento dati (ed infatti io la provavo non collegata ad un pulsante ma
come codice fine a se stesso ) .
Quindi una semplice select non funge.
premendo F1 su docmd.runsql si ottiene
Il metodo RunSQL esegue l'azione EseguiSQL in Visual Basic nelle query di
comando. Per ulteriori informazioni sul funzionamento dell'azione e dei
relativi argomenti, vedere l'argomento della Guida in linea relativo
all'azione.
Questo metodo si applica solo ai database di Microsoft Access (mdb).
Sintassi
DoCmd.RunSQL istruzionesql[, utilizzatransazione]
Il metodo RunSQL utilizza gli argomenti riportati di seguito.
      Argomento Descrizione
      istruzionesql Espressione stringa che è un'istruzione SQL valida per
una query di comando o per una query di definizione dati. Utilizza
un'istruzione INSERT INTO, DELETE, SELECT...INTO, UPDATE, CREATE TABLE,
ALTER TABLE, DROP TABLE, CREATE INDEX o DROP INDEX. Includere una
proposizione IN se si desidera accedere ad un altro database.
 Ciao,
 Alex (alle volte un po' rincoglionito....)

 Filippo
Rispondo a me stesso e giro la domanda a tutti
Incuriosito dal problema ho guardato la guida on line:
      istruzionesql Espressione stringa che è un'istruzione SQL valida per
una query di comando o per una query di definizione dati. Utilizza
un'istruzione INSERT INTO, DELETE, SELECT...INTO, UPDATE, CREATE TABLE,
ALTER TABLE, DROP TABLE, CREATE INDEX o DROP INDEX. Includere una
proposizione IN se si desidera accedere ad un altro database.
NON E' per caso che il comando RunSQL accetta solo istruzioni per query di
comando o di definizione dati e NON query di selezione?
A leggere le istruzioni sopra riportate si direbbe di si.
Allora ho provato quest'altra istruzione:
DoCmd.RunSQL ("SELECT * INTO XYZ FROM [nometabella];")
e funziona perfettamente.
Mi dimetto dal Club e voglio anche l'applauso (questo perché sono un semi
principiante)
Ciao
Filippo

Applauso....
ma arrivi secondo...
Anche io sono un aspirante principiante ma l'errore era inconcepibile da un
punto di vista sintattico.
L'istruzione sql di select funziona bene di per se però quel tonnacchione di
access non ci crede se non per una query di cui sopra.
P.s. non ci crede nemmeno via macro (c'ho provato vedi mai...)
Buona giornata ,
Alex

 ma arrivi secondo...
Mica tanto...
ci ho impiegato dalle 10.20 (primo post) alle 10.44 cioč in tutto meno di
qualcun altro ;)
Ciao e grazie dell'applauso
F.


Va be, x  stavolta accuso il colpo e ti lascio in pole...
meglio secondo che nulla (l'importante è che ci siamo arrivati)
Già che ci sono faccio una domandina anch'io:
nessuno ha mai usato una MsFlexGrid in access?
Non mi riesce di levarci le gambine...
Ciao
Alex

Filippo
Grazie ancora,
	Fly

e funziona perfettamente.
Dimenticavo... ehehe altro domandone ;)
E per evitare che salti fuori quel messaggio che chiede conferma della
creazione della nuova tabella? (o magari di modifica?)
:)
Vabè..magari questa me la sbrigo in qualche modo..però magari sei più
veloce di me ;)
Fly

 Fly
Uffa, innanzi tutto dai meriti solo agli altri.....:-)
va bhe..
apri il db
--> strumenti
-->Opzioni
--> Modifica /Trova
elimina il segno di spunta su query di comando
e Poi non dirmi che sono cattivo...
Ciao
Alex (che non è poi così perfido o tonno come si autodipinge)