Ciao a tutti........ehilà, quanto tempo, che piacere ritrovarvi ecc. ecc. ma veniamo al sodo: in fase di inserimento dati (query INSERT INTO su db Access via script ASP [ovvio, altrimenti posterei su un altro forum ]) utilizzo il solito script che non mi ha mai creato problemi in anni di onorato servizio.

Questa volta mi da' errore sui campi booleani (infatti se li tolgo e inserisco gli altri dati va tutto bene).

L'errore è il solito
'80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
di quando per esempio si sbaglia a scrivere il nome di uno dei campi del database.

Per inserire questi campi solitamente acquisisco la variabile dal campo "nome_campo" del form (checkbox) in questo modo:
nome_campo=request.form("nome_campo")
if nome_campo= "nome_campo" then
nome_campo = true
else
nome_campo = false
end if
Non è il massimo ma ha sempre funzionato ........e poi li inserisco usando la sintassi
sql = "INSERT INTO tabella (nome_campo, ecc. ecc.) VALUES ("&nome_campo&", ecc. ecc.)"
come vedete senza apici.

Nel cercare l'errore mi faccio stampare la query, e vedo che i miei valori true e false sono diventati Vero e Falso, cioè sono stati tradotti in italiano, mentre l'inserimento non funziona.

:master:

Per il momento ho risolto sostituendo alle righe per trasformare nome_campo in true/false le seguenti
if nome_campo= "nome_campo" then
nome_campo = 1
else
nome_campo = 0
end if
usando 1 come true e 0 come false, e così funzia.

Cosa era successo alle mie variabili booleane, perchè sono state tradotte in italiano?
Posso intervenire con qualche istruzione ASP o dipende dalla configurazione del server e quindi dal provider?

E sopratutto.....c'è qualche modo più decente per acquisire dal form i campi booleani e inserirli nel db? Accetterei ben volentieri un buon consiglio....

Come sempre grazie in anticipo dal vostro affezionato Teo.