Newsgroup: it.comp.appl.access
Titolo: INSERT TO:errore di sintassi

Sull'evento DOPO AGGIORNAMENTO della casella combinata ccCentriImpiego
ho messo il seguente codice:
CurrentDb.Execute "INSERT INTO tblCentriImpiegoUtenti " &
"(NomeCentroImpiego)" & "VALUES (" & Me.ccCentriImpiego.Column(1)" &
");"
ma mi da errore di sintassi. Non so come deve terminare l'istruzione.
Mi date un aiutino per favore? Grazie :)

 ha scritto nel messaggio
news:1118074127.6...@g44g2000cwa.googlegroups.com...

probabilmente mancano gli apici che racchiudano il valore (suppongo che sia
una stringa) prova con:
...& "VALUES ('" & Me.ccCentriImpiego.Column(1)" & "')"
ciao,
Mat.

Provato. Non va. mi dice 'Previsto fine istruzione'.
Non ho proprio idea di come si termina questa sintassi.....

"Potone" <mborroni_NO@SPAM_inwind.it> ha scritto nel messaggio
news:xE_oe.14984$TR5....@news.edisontel.com...

mi accorgo ora che c'è anche una coppia di apici in eccesso dopo .Column(1)
quello che ti serve dovrebbe essere:
CurrentDb.Execute "INSERT INTO tblCentriImpiegoUtenti " & _
"(NomeCentroImpiego) SELECT '" & Me.ccCentriImpiego.Column(1) & "'"
in linea generale, comunque, per avere una sintassi corretta almeno dell'SQL
crea una query che faccia quello che ti serve e poi guarda l'sql generato da
access stesso.
ciao
Mat.

Infatti guardando la guida in linea del metodo Execute stavo proprio
pensando a questo.
Il tuo codice funziona ma ho problemi con gli indici. Nella tabella
tblCentriImpieghi mi appaiono gli id delle voci e non le voci.
Ecco le cose:
tblCentriImpiego:
idCentro - contatore, PK
NomeCentroImpiego - testo
tblCentriImpiegoUtenti:
idUtente - contatore, PK
idCentroImpiego - numerico, EK
NomeCentroImpiego - testo
La casella di riepilogo si chiama cccentriImpiego ed ha le segg.
caratteristiche:
.numero colonne - 2
.larghezza - 0; 5,741cm
.tipo origine riga - tabella/query
.origine riga - SELECT [tblCentriImpiego].[idCentro],
[tblCentriImpiego].[NomeCentroImpiego] FROM [tblCentriImpiego] ORDER BY
[NomeCentroImpiego];
.colonna associata: 1
.solo in elenco: SI
e sull'evento DOPO AGGIORNAMENTO ha il seg. codice:
Private Sub ccCentriImpiego_AfterUpdate()
Dim dbMIODB As DAO.Database
Set dbMIODB = CurrentDb
CurrentDb.Execute "INSERT INTO tblCentriImpiegoUtenti " &
"(NomeCentroImpiego) SELECT '" & Me.ccCentriImpiego.Column(0) & "'"
Set dbMIODB = Nothing
End Sub
mentre la casella di testo su un'altra maschera chiama subSchedaStatus
ha come origine controllo:
=DLookUp("[NomeCentroImpiego]";"tblCentriImpiegoUtenti";"[idUtente] = "
& [Maschere]![frmSchedaPrimoContatto]![id])
Il problema come ho detto è che la casella di testo, se metto
Column(1) mi mostra il valore del campo idCentroImpiego della tabella
tblCentriImpiegoUtenti.
Ma come mai???????
Aiuto :)
e GRAZIE :)

e GRAZIE :)
forse mi sfugge qualcosa, non ho capito bene il "giro" di queste maschere,
comunque quando usi Insert i campi ID... "dovrebbero" essere impostati
sempre.
Ciao,
Mat.


ieri sera ero piuttosto cotto, ora sono solo addormentato...
comunque: nell'sql che ho scritto ho incluso anche IDUtente che, essendo
chiave primaria e contatore, non è necessario mettere.
pertanto:
CurrentDb.Execute "INSERT INTO tblCentriImpiegoUtenti " & _
"(IDCentro, NomeCentroImpiego) " & _
"SELECT " & Me.ccCentriImpiego.Column(0) & _
", '" & Me.ccCentriImpiego.Column(1) & "'"
dovrebbe essere apposto.
ciao


Ciao, scusa se risp solo ora ma ieri Google mi ha detto che non potevo
più inviare messaggi perchè ne avevo mandati troppi e dovevo
ripassare.
Cmq devo sottolineare CON ESTREMO DISPIACERE che la guida in linea non
serve a niente. Ieri sera ho letto la parte relativa ad INSERT TO e non
tornava la sintassi.
Ecco la mia riga di codice:
CurrentDb.Execute "INSERT INTO tblCentriImpiegoUtenti " & "(idUtente,
idCentroImpiego, NomeCentroImpiego) VALUES " & "(Me.idUtente,
[tblCentriImpiegoUtenti]![idCentroImpiego],
Me.ccCentriImpiego.Column(1));"
ora non metto in dubbio che questa riga sia imperfetta ma la guida non
segnala ANCHE le virgole, i punti, i punti e virgola che se non ci sono
non ti fanno funzionare la stringa.
Cmq grazie tantissime :)))

Cmq grazie tantissime :)))
prego.
Comunque per avere certezza che il codice sql funzioni o meglio per evitare 
di dovertelo scrivere a mano sfrutta il generatore di query di access e poi 
guardati l'sql ed eventualmente adattalo.
Ciao,
Mat.