PRB: Errore ASP 80004005 "Nome origine dati non trovato"

Traduzione articoli Traduzione articoli
Identificativo articolo: 306345 - Visualizza i prodotti a cui si riferisce l?articolo.
IMPORTANTE: in questo articolo vengono fornite informazioni su come modificare il Registro di sistema. Prima di modificare il Registro di sistema, eseguirne una copia di backup e assicurarsi di sapere come ripristinarlo in caso di problemi. Per informazioni su come eseguire il backup, ripristinare e modificare il Registro di sistema, fare clic sul numero dell'articolo della Microsoft Knowledge Base riportato di seguito:
256986 Descrizione del Registro di sistema di Microsoft Windows
Espandi tutto | Chiudi tutto

In questa pagina

Sintomi

Quando si utilizzano gli oggetti ADO (ActiveX Data Objects) oppure la connettività ODBC per aprire una connessione a un database in una pagina ASP (Active Server Pages), è possibile che venga visualizzato un messaggio di errore analogo al seguente:
Errore "80004005" del provider Microsoft OLE DB per driver ODBC
[Microsoft][Gestione driver ODBC] Nome origine dati non trovato e driver predefinito non specificato.

Cause

Questo errore può verificarsi quando per aprire una connessione a un database in una pagina ASP si utilizza una stringa di connessione basata su DSN (Nome origine dati, Data Source Name) ossia una stringa di connessione che utilizza un DSN di sistema, oppure una stringa di connessione senza DSN ma con ADO e ODBC. Di seguito sono riportate le cause più comuni di questo errore.

Utilizzo di un DSN ODBC

  • L'account utente di Microsoft Windows NT 4.0 o Windows 2000 utilizzato per elaborare la richiesta della pagina ASP non dispone di autorizzazioni sufficienti per leggere la chiave del Registro di sistema che include le informazioni di configurazione del DSN specificato.
  • Il DSN di sistema ODBC specificato nella stringa di connessione ADO non esiste sul server IIS.
  • Per specificare la stringa di connessione ADO, viene utilizzata la variabile ASP Application o Session inizializzata nel file Global.asa dell'applicazione ASP (o in una pagina ASP a cui si è effettuato l'accesso prima della pagina contenente il codice di connessione al database). Questa variabile di stringa di connessione non viene inizializzata se viene eseguito il codice per aprire la connessione al database. Per confermare l'esistenza di questa condizione, aggiungere un'istruzione Response.Write prima della riga di codice che apre la connessione al database, così da visualizzare la stringa di connessione memorizzata nella variabile.

Utilizzo di una stringa di connessione senza DSN

  • L'account utente di Windows NT 4.0 o Windows 2000 utilizzato per elaborare la richiesta della pagina ASP non dispone di autorizzazioni sufficienti per leggere la chiave del Registro di sistema che include le informazioni di configurazione del driver ODBC specificato. Il parametro Driver di una stringa di connessione senza DSN specifica il driver ODBC utilizzato per stabilire una connessione al database.
  • Il nome del driver ODBC specificato nella stringa di connessione è ortograficamente errato oppure è quello di un driver non installato sul server IIS.
  • Per specificare la stringa di connessione ADO, viene utilizzata la variabile ASP Application o Session inizializzata nel file Global.asa dell'applicazione ASP (o in una pagina ASP a cui si è effettuato l'accesso prima della pagina contenente il codice di connessione al database). Questa variabile di stringa di connessione non viene inizializzata se viene eseguito il codice per aprire la connessione al database. Per confermare l'esistenza di questa condizione, aggiungere un'istruzione Response.Write prima della riga di codice che apre la connessione al database, così da visualizzare la stringa di connessione memorizzata nella variabile.

Risoluzione

ATTENZIONE: l'errato utilizzo dell'editor del Registro di sistema può causare seri problemi che potrebbero richiedere la reinstallazione del sistema operativo. Microsoft non è in grado di garantire la risoluzione di problemi causati dall'errato utilizzo dell'editor del Registro di sistema. L'utilizzo dell'editor del Registro di sistema è a rischio e pericolo dell'utente.

Utilizzo di un DSN ODBC

Autorizzazioni insufficienti per leggere la chiave del Registro di sistema DSN

Accordare nel modo seguente all'account utente di Windows NT 4.0 o Windows 2000 l'accesso in lettura alla chiave del Registro di sistema specificata per il DSN di sistema ODBC:
  1. Determinare l'account utilizzato per elaborare la richiesta della pagina ASP.
  2. Fare clic sul pulsante Start, scegliere Esegui, digitare regedt32.exe, quindi scegliere OK per avviare l'editor del Registro di sistema.
  3. Nella finestra HKEY_LOCAL_MACHINE individuare la chiave HKLM\SOFTWARE\ODBC\ODBC.INI. La chiave ODBC.INI contiene una sottochiave per ciascun DSN di sistema ODBC registrato sul server.
  4. Fare clic sulla chiave del Registro di sistema relativa al DSN specificato nella stringa di connessione ADO.
  5. Scegliere Autorizzazioni dal menu Protezione.
  6. Aggiungere all'elenco degli utenti che possono accedere a questa chiave l'account utente individuato al passaggio 1, quindi selezionare la casella di controllo relativa alla lettura per tale utente.
  7. Scegliere Applica e chiudere l'editor del Registro di sistema.

Assenza del DSN specificato sul server IIS

Creare sul server IIS il DSN di sistema ODBC specificato.

Mancata esecuzione del codice di Global.asa per l'inizializzazione della stringa di connessione ADO

  1. Verificare che la cartella IIS Application sia stata configurata come directory virtuale IIS con le autorizzazioni di esecuzione di script.
  2. Verificare che il file Global.asa si trovi nella directory radice dell'applicazione IIS.
  3. Se la cartella Application IIS è già configurata come directory virtuale IIS, rimuovere e ricreare l'applicazione IIS.
  4. Fare riferimento agli articoli elencati nella sezione "Riferimenti" per verificarne la rispondenza alla propria situazione particolare.
  5. Contattare il Servizio Supporto Tecnico Clienti Microsoft se il codice del file Global.asa continua a non essere eseguito nonostante l'esecuzione delle procedure indicate in precedenza.

Utilizzo di una stringa di connessione senza DSN

Autorizzazioni insufficienti per leggere la chiave del Registro di sistema relativa al driver ODBC specificato

Accordare nel modo seguente all'account utente di Windows NT 4.0 o Windows 2000 l'accesso in lettura alla chiave del Registro di sistema specificata per driver ODBC:
  1. Determinare l'account utilizzato per elaborare la richiesta della pagina ASP.
  2. Fare clic sul pulsante Start, scegliere Esegui, digitare regedt32.exe, quindi scegliere OK per avviare l'editor del Registro di sistema.
  3. Nella finestra HKEY_LOCAL_MACHINE individuare la chiave HKLM\SOFTWARE\ODBC\ODBCINST.INI. La chiave ODBCINST.INI contiene una sottochiave per ciascun driver ODBC installato sul server.
  4. Fare clic sulla chiave del Registro di sistema relativa al driver specificato nella stringa di connessione ADO.
  5. Scegliere Autorizzazioni dal menu Protezione.
  6. Aggiungere all'elenco degli utenti che possono accedere a questa chiave l'account utente individuato al passaggio 1, quindi selezionare la casella di controllo relativa alla lettura per tale utente.
  7. Scegliere Applica e chiudere l'editor del Registro di sistema.

Ortografia errata del nome del driver o driver non installato sul server IIS

Verificare che l'ortografia del nome del driver ODBC nella stringa di connessione ADO sia corretta. Inoltre, verificare che il driver specificato sia installato sul server IIS. Per visualizzare l'elenco dei driver ODBC installati in un sistema, cercare in Amministratore origine dati ODBC (Odbcad32.exe) nella scheda Driver.

Mancata esecuzione del codice di Global.asa per l'inizializzazione della stringa di connessione ADO

  1. Verificare che la cartella IIS Application sia stata configurata come directory virtuale IIS con le autorizzazioni di esecuzione di script.
  2. Verificare che il file Global.asa si trovi nella directory radice dell'applicazione IIS.
  3. Se la cartella Application IIS è già configurata come directory virtuale IIS, rimuovere e ricreare l'applicazione IIS.
  4. Fare riferimento agli articoli elencati nella sezione "Riferimenti" per verificarne la rispondenza alla propria situazione particolare.
  5. Contattare il Servizio Supporto Tecnico Clienti Microsoft se il codice del file Global.asa continua a non essere eseguito nonostante l'esecuzione delle procedure indicate in precedenza.

Status

Si tratta di un comportamento correlato alla progettazione del prodotto.

Informazioni

L'account utente di Windows NT 4.0 o Windows 2000 le cui credenziali sono utilizzate per elaborare una richiesta di una pagina ASP è determinato dal meccanismo di autenticazione che il server Web utilizza per autenticare la richiesta utente. Se ad esempio si utilizza l'autenticazione anonima, per elaborare la richiesta utente vengono utilizzate le credenziali dell'account anonimo di IIS configurato, che per impostazione predefinita è l'account IUSR_<NomeServerWeb>. Quando si utilizza l'autenticazione di base, in Microsoft Internet Explorer viene chiesto all'utente di fornire un ID utente e una password di rete Windows NT 4.0 o Windows 2000 validi, le cui credenziali vengono poi utilizzate per elaborare la richiesta. Per ulteriori informazioni sui meccanismi di autenticazione supportati e sul relativo funzionamento, fare riferimento alla documentazione in linea di IIS.

Riferimenti

Per ulteriori informazioni, fare clic sui numeri degli articoli della Microsoft Knowledge Base riportati di seguito:
188715 Mancata attivazione dell'ASA globale quando l'applicazione IIS 4.0 è stata creata con Visual InterDev
288245 PRB: Global.asa non viene eseguito da Personal Web Server in Windows 98
265275 FP2000: Global.asa non viene eseguito in un Web di FrontPage
173742 FIX: Global.asa non viene eseguito con accesso Web limitato

Proprietà

Identificativo articolo: 306345 - Ultima modifica: venerdì 15 giugno 2007 - Revisione: 5.0
Le informazioni in questo articolo si applicano a
  • Microsoft Active Server Pages 2.0
  • Microsoft Active Server Pages 3.0
  • Microsoft Internet Information Server 4.0
  • Microsoft Internet Information Services 5.0
  • Microsoft Data Access Components 2.0
  • Microsoft Data Access Components 2.1
  • Microsoft Data Access Components 2.1 Service Pack 1
  • Microsoft Data Access Components 2.1 Service Pack 2
  • Microsoft Data Access Components 2.5
  • Microsoft Data Access Components 2.5 Service Pack 1
  • Microsoft Data Access Components 2.5 Service Pack 2
  • Microsoft Data Access Components 2.6
  • Microsoft Data Access Components 2.6 Service Pack 1
  • Microsoft Data Access Components 2.7
Chiavi: 
kbprb KB306345
LE INFORMAZIONI CONTENUTE NELLA MICROSOFT KNOWLEDGE BASE SONO FORNITE SENZA GARANZIA DI ALCUN TIPO, IMPLICITA OD ESPLICITA, COMPRESA QUELLA RIGUARDO ALLA COMMERCIALIZZAZIONE E/O COMPATIBILITA' IN IMPIEGHI PARTICOLARI. L'UTENTE SI ASSUME L'INTERA RESPONSABILITA' PER L'UTILIZZO DI QUESTE INFORMAZIONI. IN NESSUN CASO MICROSOFT CORPORATION E I SUOI FORNITORI SI RENDONO RESPONSABILI PER DANNI DIRETTI, INDIRETTI O ACCIDENTALI CHE POSSANO PROVOCARE PERDITA DI DENARO O DI DATI, ANCHE SE MICROSOFT O I SUOI FORNITORI FOSSERO STATI AVVISATI. IL DOCUMENTO PUO' ESSERE COPIATO E DISTRIBUITO ALLE SEGUENTI CONDIZIONI: 1) IL TESTO DEVE ESSERE COPIATO INTEGRALMENTE E TUTTE LE PAGINE DEVONO ESSERE INCLUSE. 2) I PROGRAMMI SE PRESENTI, DEVONO ESSERE COPIATI SENZA MODIFICHE, 3) IL DOCUMENTO DEVE ESSERE DISTRIBUITO INTERAMENTE IN OGNI SUA PARTE. 4) IL DOCUMENTO NON PUO' ESSERE DISTRIBUITO A SCOPO DI LUCRO.

Invia suggerimenti

 

Contact us for more help

Contact us for more help
Connect with Answer Desk for expert help.
Get more support from smallbusiness.support.microsoft.com