8 messaggi dal 27 luglio 2004
Ciao a Tutti, mi sono appena iscritto al forum e ho già subito una domanda da fare.

ho iniziato da poco con ASP, e stò cercando di creare un' interfaccia Web per utilizzare il "programma" della gesìtione qualità in Access che hanno fatto nell' azienda in cui lavoro.
Il problema è il seguente, chi ha creato il programmillo in Access ha usato nomi tabelle e nomi campi contenenti spazi oppure apici tipo CONFERMA CONS PRODOTTO oppure QUANTITA'
Quando cerco di aprire l' oggetto recordset con:
objRSConfermaConsegnaProdotto.Open "CONFERMA CONS PRODOTTO", objConn, , adLockPessimistic, adCmdTable

Ottengo:
Microsoft OLE DB Provider for ODBC Drivers errore "80040e14"

[Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nella proposizione FROM.

/RegistraDati.asp, riga 43

Cosa che non succede se eseguo la stessa cosa su di una tabella che nel nome non contenga spazi vuoti

C' è qualche scappatoia o devo pregare in ginocchio quello che ha fatto il programma di cambiare nomi tabelle e campi con tutto il lavoro che ne consegue?

Vi prego ditemi che sono un pirla e che la soluzione è semplicissima senza scomodare nessun Guru.

Ringrazio in anticipo per qualunque buona idea.

Ciao
Dario
1.818 messaggi dal 21 giugno 2001
Contributi
racchiudi il nome della tabella tra parentesi quadre [CONFERMA CONS PRODOTTO]

hyppos
<code> in giro torte sol ciclos et rotor igni</code>
8 messaggi dal 27 luglio 2004
funziona !!! .... funziona !!! .... funziona !!!

Grazie

Ciao
Dario
8 messaggi dal 27 luglio 2004
E figurati se non avevo parlato troppo presto

Mò non mi da problemi ( penso ) con il nome di un campo di un' altra tabella

il campo si chiama QTA'
.............
Set objRSQuantitaDiConsegna = Server.CreateObject ("ADODB.Recordset")
objRSQuantitaDiConsegna.Open "[QTA' DI CONSEGNA]", objConn, , adLockPessimistic, adCmdTable
objRSQuantitaDiConsegna.AddNew
objRSQuantitaDiConsegna("codice") = Request("Codice")
objRSQuantitaDiConsegna("ragione_sociale") = strRagioneSociale
objRSQuantitaDiConsegna("NUM_CONS") = iNumeroSpedizione
objRSQuantitaDiConsegna("QTA'")= Request("Quantita")
objRSQuantitaDiConsegna.Update
..............

E mi ritorna il seguente
Microsoft OLE DB Provider for ODBC Drivers errore "80004005"

[Microsoft][Driver ODBC Microsoft Access] Errore di sintassi nell'istruzione INSERT INTO.

/RegistraDati.asp, riga 95

Che è la riga con l'Update

Ho provato anche inserendo la sequenza di escape al posto dll' apice con :

objRSQuantitaDiConsegna("QTA\'")= Request("Quantita")

Ma stavolta l' errore è:
ADODB.Recordset errore "800a0cc1"

Impossibile trovare l'oggetto nell'insieme corrispondente al nome o al numero richiesto.

/RegistraDati.asp, riga 94
Ho provato ad aggiungere le parentesi quadre ma nulla da fare

Qualche idea ????

Grazie ancora

Dario
8 messaggi dal 27 luglio 2004
provato, ma ho ottenuto i risultati di prima

Ora Vado a casa che sono morto, ci ripensero domattina a mente fredda

Grazie

Buona Serata

Dario
8 messaggi dal 27 luglio 2004
La notte porta consiglio oltre che insonnia, infatti ho risolto in un modo ( usando una stringa SQL) che non mi piace, ma funziona:

Dim strSQLQDC
strSQLQDC = "INSERT INTO [QTA' DI CONSEGNA]"
strSQLQDC = strSQLQDC & "([codice], [ragione_sociale], [NUM_CONS], [QTA'])"
strSQLQDC = strSQLQDC & "VALUES ('"
.........................
.......................
Dim objQDC
Set objQDC = Server.CreateObject ("ADODB.Command")
objQDC.ActiveConnection = objConn
objQDC.CommandText = strSQLQDC
objQDC.CommandType = adCmdText
objQDC.Execute

Qulcuno sà se il record che tipo di bloccaggio ha quando eseguo l' istruzione, visto che non posso specificarlo come nel caso precedente ?

Ciao a Tutti

Dario

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.