0 messaggi dal 14 dicembre 2023
Purtroppo i messaggi di errore quando si usa S.O. e software tradotti nella lingua locale (italiano in questo caso) sono spesso inutili o addirittura fuorvianti nella ricerca della causa.

Questo errore appare anche quando semplicemente il percorso del file Access e' sbagliato.
Ovvero, prima ancora che sia un problema di accesso al file e/o cartella, semplicemente si sta' tendando di accedere ad un file
che non si trova nel percorso che ci si aspetta.
In ASP classic, solitamente si usa una stringa di conenssione del tipo: (percorso relativo)

DATA_SOURCE = "Provider = Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("db") & "\dati.mdb"

mentre potrebbe essere meglio usare (percorso assoluto)

DATA_SOURCE = "Provider=Microsoft.Jet.OLEDB.4.0; Data Source=" & Server.MapPath("\studio\db\dati.mdb")

in quanto, siamo sinceri, non e' che le cartelle del database vengono cambiate cosi' spesso! Anzi, non vengono praticamente cambiate mai!

Per verificare se lo script che ha generato l'errore (0x80004005) puo' essere utile stampare a monitor durante i test la stringa di connessione interpretata:

Response.Write "<div><code>DATA_SOURCE: [" + DATA_SOURCE + "]</code></dov>"

Appare quindi chiaro che la descrizione dell'errore "...Query non aggiornabile..." e' assolutamente fuorviante, non c'e' nessuna query che non e' aggiornabile, inoltre spesso questo errore si presente con l'istruzione UPDATE nomeTabella SET .... ecc. ecc. e dovrebbe quindi apprire tabella non aggiornabile. In questo caso dovrebbe comunque apparirre "....Database non raggiungibile.."

Morale: usare sempre e solo S.O. e software in lingua originale (EN) e creare poi nel proprio software l'interfaccia "friendly" in italiano.

P.S. mi e' capitato anche che un Windows Server 2003/2008 traducesse true con vero e false con falso rendendo impossibile scrivere qualsiasi test logico in modo compatto!!!

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.