[Access - VBA] "Tipi di dati non corrispondenti nell'espressione crite...

giovedì 22 aprile 2010 - 15.10

1sirena Profilo | Newbie

Ciao.

Tramite un bottone devo far inserire un nuovo record nel mio db, ma ho 1 problema.
Questo è il codice che ho utilizzato nel bottone:
Il codice sorgente non è stato renderizzato qui
perchè non c'è sufficiente spazio.
Clicca qui per visualizzarlo in una nuova finestra
In pratica non riesco a salvare il record inserito. mi da il seguente errore: "Tipi di dati non corrispondenti nell'espressione criterio"
e il debug mi evidenzia l'errore in questo punto del codice:
Set rec = qdf.OpenRecordset()

alx_81 Profilo | Guru

>Ciao.
Ciao

>Tramite un bottone devo far inserire un nuovo record nel mio db, ma ho 1 problema.
>In pratica non riesco a salvare il record inserito. mi da il
>seguente errore: "Tipi di dati non corrispondenti nell'espressione criterio"
>e il debug mi evidenzia l'errore in questo punto del codice:
>Set rec = qdf.OpenRecordset()
Il problema è quasi sicuramente nella composizione della query. Intanto passi come stringa tutto, quindi se hai definito i tipi sulle colonne della tabella, questo già è un problema. Detto questo, cerca di usare i command e non di comporre sql dinamico in quel modo, visto che ti esponi al SQL Injection.
Usa Connection, Command e recordset, ma non creare l'sql in quel modo, è pericoloso e non definisce strettamente i tipi di definizione delle colonne, esponendoti a poca affidabilità e controllo. Guardati un po' ADO e cerca di utilizzarlo con le collezioni di parametri e le query parametriche:

http://forum.masterdrive.it/vba-tutorials-and-how-to-37/access-query-parametriche-18578/
http://support.microsoft.com/kb/107748/it

--

Alessandro Alpi | SQL Server MVP
MCP|MCITP|MCTS|MCT

http://www.alessandroalpi.net
http://blogs.dotnethell.it/suxstellino
http://mvp.support.microsoft.com/profile/Alessandro.Alpi
Partecipa anche tu! Registrati!
Hai bisogno di aiuto ?
Perchè non ti registri subito?

Dopo esserti registrato potrai chiedere
aiuto sul nostro Forum oppure aiutare gli altri

Consulta le Stanze disponibili.

Registrati ora !
Copyright © dotNetHell.it 2002-2025
Running on Windows Server 2008 R2 Standard, SQL Server 2012 & ASP.NET 3.5