27 messaggi dal 10 giugno 2002
Salve a tutti

non riesco a capire il perchè.
Effettuando una semplice "Insert" con Jet il motore non fa altro che dirmi che la sintassi dell'istruzione è errata.
Per magia provo con ODBC e la stessa istruzione funziona. Mha!?
---------------------------------
connstring
set conn=server.createObject("adodb.connection")
---------------------------------
connstring="DRIVER={Microsoft Access Driver (*.mdb)};" & "DBQ=" & server.mapPath("../db/db.mdb")
--------------------------------- oppure
connString="Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & server.mapPath("../db/db.mdb")
---------------------------------
conn.open connstring
---------------------------------
sqlTemp=INSERT INTO utenti (nome, username, email, password, tipo_utente, registrazione, abilitato, sessione) VALUES('sss','SNTSN1','nuovo_due@unDominio.it','7ed9137ed356b9d645b3a82433d73f12',1,'200407141926',1,'d41d8cd98f00b204e9800998ecf8427e');
---------------------------------
conn.beginTrans
conn.execute sqlTemp
if err.number=0 then
conn.commitTrans
else
conn.rollBackTrans
end if
---------------------------------

come è possibile????????????
11.886 messaggi dal 09 febbraio 2002
Contributi
mi ricordo il tempo perso dietro a questa cosa... è un problema apparentemente invisibile.

Non puoi utilizzare qualsiasi nome per definire i nomi dei campi. Ci sono delle parole riservate e "password" è una di quelle.
La cosa che puoi fare è rinominare il tuo campo password, oppure, se intendi conservare quel nome puoi farlo, a patto di racchiuderlo nelle parentesi quadre:

INSERT INTO utenti (nome, username, email, [password], ...

in questo modo il parser SQL tratterà letteralemente quanto inserito tra le parentesi e lo interpreterà come nome di campo. ciao

Altri nomi riservati sono "note" e... boh, non mi ricordo, comunque sappi che quando capita qualcosa di apparentemente inspiegabile è perchè c'è di mezzo una parola riservata o ci sono problemi con i nomi
Modificato da BrightSoul il 14 luglio 2004 20.01 -

Enjoy learning and just keep making
27 messaggi dal 10 giugno 2002
BrightSoul ha scritto:
mi ricordo il tempo perso dietro a questa cosa... è un problema apparentemente invisibile.

Non puoi utilizzare qualsiasi nome per definire i nomi dei campi. Ci sono delle parole riservate e "password" è una di quelle.
La cosa che puoi fare è rinominare il tuo campo password, oppure, se intendi conservare quel nome puoi farlo, a patto di racchiuderlo nelle parentesi quadre:

INSERT INTO utenti (nome, username, email, [password], ...

in questo modo il parser SQL tratterà letteralemente quanto inserito tra le parentesi e lo interpreterà come nome di campo. ciao

Altri nomi riservati sono "note" e... boh, non mi ricordo, comunque sappi che quando capita qualcosa di apparentemente inspiegabile è perchè c'è di mezzo una parola riservata o ci sono problemi con i nomi
Modificato da BrightSoul il 14 luglio 2004 20.01 -


Ok, grazie! Ma perchè con ODBC invece funziona?
11.886 messaggi dal 09 febbraio 2002
Contributi
boh, probabilmente il provider ODBC non considera il nome "password" come una parola riservata.

Enjoy learning and just keep making

Torna al forum | Feed RSS

ASPItalia.com non è responsabile per il contenuto dei messaggi presenti su questo servizio, non avendo nessun controllo sui messaggi postati nei propri forum, che rappresentano l'espressione del pensiero degli autori.