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 solitodi quando per esempio si sbaglia a scrivere il nome di uno dei campi del database.'80040e10'
[Microsoft][ODBC Microsoft Access Driver] Too few parameters. Expected 1.
Per inserire questi campi solitamente acquisisco la variabile dal campo "nome_campo" del form (checkbox) in questo modo:
Non è il massimonome_campo=request.form("nome_campo")
if nome_campo= "nome_campo" then
nome_campo = true
else
nome_campo = false
end ifma ha sempre funzionato ........e poi li inserisco usando la sintassi
come vedete senza apici.sql = "INSERT INTO tabella (nome_campo, ecc. ecc.) VALUES ("&nome_campo&", ecc. ecc.)"
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
usando 1 come true e 0 come false, e così funzia.if nome_campo= "nome_campo" then
nome_campo = 1
else
nome_campo = 0
end if
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.
![]()