PROBLÈME : Erreur ASP 80004005 « Source de données introuvable »

Traductions disponibles Traductions disponibles
Numéro d'article: 306345 - Voir les produits auxquels s'applique cet article
IMPORTANT : cet article contient des informations sur la modification du Registre. Avant de modifier le Registre, pensez à le sauvegarder et assurez-vous que vous savez le restaurer en cas de problème. Pour plus d'informations sur la sauvegarde, la restauration et la modification du Registre, cliquez sur le numéro ci-dessous pour afficher l'article correspondant dans la Base de connaissances Microsoft.
256986 Description du Registre de Microsoft Windows
Agrandir tout | Réduire tout

Sommaire

Symptômes

Lorsque vous utilisez des objets ADO (ActiveX Data Objects) ou ODBC pour ouvrir une connexion de base de données dans une page ASP (Active Server Pages), le message d'erreur suivant peut s'afficher :
Erreur '80004005' du fournisseur Microsoft OLE-DB pour les pilotes ODBC
[Microsoft][Gestionnaire de pilotes ODBC] Source de données introuvable et nom de pilote non spécifié.

Cause

Cette erreur peut se produire lorsque vous utilisez une chaîne de connexion avec DSN (chaîne de connexion qui utilise un nom de source de données DSN) ou une chaîne de connexion sans DSN avec ADO et ODBC pour ouvrir une connexion de base de données dans une page ASP. Les causes courantes de cette erreur sont indiquées ci-dessous.

Utilisation d'un nom de source de données ODBC

  • Le compte d'utilisateur Microsoft Windows NT 4.0 ou Windows 2000 qui est utilisé pour traiter la demande de page ASP ne dispose pas d'autorisations suffisantes pour lire la clé de Registre qui stocke les informations de configuration du nom de source de données spécifié.
  • Le nom de source de données ODBC système qui est spécifié dans la chaîne de connexion ADO n'existe pas sur le serveur IIS.
  • L'application ASP ou la variable Session qui est initialisée dans le fichier Global.asa de l'application ASP (ou dans une page ASP qui est accédée avant la page contenant le code de connexion de base de données) est utilisée pour spécifier la chaîne de connexion ADO. Cette variable de chaîne de connexion n'est pas initialisée lors de l'exécution du code permettant d'ouvrir la connexion de base de données. Pour confirmer cela, ajoutez une instruction Response.Write avant la ligne de code qui ouvre la connexion de base de données afin d'afficher la chaîne de connexion qui est stockée dans la variable.

Utilisation d'une chaîne de connexion sans DSN

  • Le compte d'utilisateur Windows NT 4.0 ou Windows 2000 qui est utilisé pour traiter la demande de page ASP ne dispose pas d'autorisations suffisantes pour lire la clé de Registre qui stocke les informations de configuration du pilote ODBC. Le paramètre Driver dans une chaîne de connexion sans DSN spécifie le pilote ODBC qui est utilisé pour établir la connexion de base de données.
  • Le nom du pilote ODBC qui est spécifié dans la chaîne de connexion est mal orthographié ou indique un pilote qui n'est pas installé sur le serveur IIS.
  • L'application ASP ou la variable Session qui est initialisée dans le fichier Global.asa de l'application ASP (ou dans une page ASP qui est accédée avant la page contenant le code de connexion de base de données) est utilisée pour spécifier la chaîne de connexion ADO. Cette variable de chaîne de connexion n'est pas initialisée lors de l'exécution du code permettant d'ouvrir la connexion de base de données. Pour confirmer cela, ajoutez une instruction Response.Write avant la ligne de code qui ouvre la connexion de base de données afin d'afficher la chaîne de connexion qui est stockée dans la variable.

Résolution

AVERTISSEMENT : toute mauvaise utilisation de l'Éditeur du Registre peut générer des problèmes sérieux, pouvant vous obliger à réinstaller votre système d'exploitation. Microsoft ne peut pas garantir que les problèmes résultant d'une mauvaise utilisation de l'Éditeur du Registre puissent être résolus. Vous assumez l'ensemble des risques liés à l'utilisation de cet outil.

Utilisation d'un nom de source de données ODBC

Autorisations insuffisantes pour lire la clé de Registre DSN

Accordez l'accès en lecture du compte d'utilisateur Windows NT 4.0 ou Windows 2000 dans la clé de Registre DSN système ODBC comme suit :
  1. Déterminez le compte qui est utilisé pour traiter la demande de page ASP.
  2. Dans le menu Démarrer, cliquez sur Exécuter, tapez regedt32.exe, puis cliquez sur OK pour démarrer l'Éditeur du Registre.
  3. Dans la fenêtre HKEY_LOCAL_MACHINE, accédez à la clé HKLM\SOFTWARE\ODBC\ODBC.INI. La clé ODBC.INI contient une sous-clé pour chaque DSN SYSTÈME d'ODBC qui est enregistré sur le serveur.
  4. Cliquez sur la clé de Registre DSN pour le DSN qui est spécifié dans la chaîne de connexion ADO.
  5. À partir du menu Sécurité, cliquez sur Autorisations.
  6. Ajoutez le compte d'utilisateur que vous avez identifié à l'étape 1 à la liste des utilisateurs qui peuvent accéder à cette clé, puis activez la case à cocher Lecture pour cet utilisateur.
  7. Cliquez sur Appliquer, puis fermez l'Éditeur du Registre.

Le DSN spécifié n'existe pas sur le serveur IIS

Créez le spécifié DSN ODBC Système sur le serveur IIS.

Le code Global.asa permettant d'initialiser la chaîne de connexion ADO ne s'exécute pas

  1. Vérifiez que le dossier d'application IIS a été installé en tant que répertoire virtuel IIS avec les autorisations permettant d'exécuter des scripts.
  2. Vérifiez que le fichier Global.asa se trouve dans le répertoire racine de l'application IIS.
  3. Si le dossier d'application est déjà installé en tant que répertoire virtuel IIS, supprimez et recréez l'application IIS.
  4. Reportez-vous aux articles qui sont répertoriés dans la section « Références » afin de déterminer si l'un d'eux s'applique à votre scénario spécifique.
  5. Contactez des Services de Support technique Microsoft si le code de Global.asa ne semble pas s'exécuter après les étapes précédentes.

Utilisation d'une chaîne de connexion sans DSN

Autorisations insuffisantes pour lire la clé de Registre de pilote ODBC spécifiée

Accordez l'accès en lecture du compte d'utilisateur Windows NT 4.0 ou Windows 2000 dans la clé de Registre de pilote ODBC spécifié comme suit :
  1. Déterminez le compte qui est utilisé pour traiter la demande de page ASP.
  2. Dans le menu Démarrer, cliquez sur Exécuter, tapez regedt32.exe, puis cliquez sur OK pour démarrer l'Éditeur du Registre.
  3. Dans la fenêtre HKEY_LOCAL_MACHINE, accédez à la clé HKLM\SOFTWARE\ODBC\ODBCINST.INI. La clé ODBCINST.INI contient une sous-clé pour chaque pilote ODBC qui est installé sur le serveur.
  4. Cliquez sur la clé de Registre Driver pour le pilote qui est spécifié dans la chaîne de connexion ADO.
  5. À partir du menu Sécurité, cliquez sur Autorisations.
  6. Ajoutez le compte d'utilisateur que vous avez identifié à l'étape 1 à la liste des utilisateurs qui peuvent accéder à cette clé, puis activez la case à cocher Lecture pour cet utilisateur.
  7. Cliquez sur Appliquer, puis fermez l'Éditeur du Registre.

Le nom de pilote est mal orthographié ou n'est pas installé sur le serveur IIS

Vérifiez que le nom du pilote ODBC est correctement orthographié dans la chaîne de connexion ADO. Vérifiez également que le pilote spécifié est installé sur le serveur IIS. Pour consulter la liste des pilotes ODBC qui sont installés sur un système, recherchez l'Administrateur de sources de données ODBC (Odbcad32.exe) sous l'onglet Pilotes.

Le code Global.asa permettant d'initialiser la chaîne de connexion ADO ne s'exécute pas

  1. Vérifiez que le dossier d'application IIS a été installé en tant que répertoire virtuel IIS avec les autorisations permettant d'exécuter des scripts.
  2. Vérifiez que le fichier Global.asa se trouve dans le répertoire racine de l'application IIS.
  3. Si le dossier d'application est déjà installé en tant que répertoire virtuel IIS, supprimez et recréez l'application IIS.
  4. Reportez-vous aux articles qui sont répertoriés dans la section « Références » afin de déterminer si l'un d'eux s'applique à votre scénario spécifique.
  5. Contactez des Services de Support technique Microsoft si le code de Global.asa ne semble pas s'exécuter après les étapes précédentes.

Statut

Ce comportement est voulu par la conception même du produit.

Plus d'informations

Le compte d'utilisateur Windows NT 4.0 ou Windows 2000 dont les informations d'identification sont utilisées pour traiter une demande de page ASP est déterminé par le mécanisme d'authentification utilisé par le serveur Web pour authentifier la requête de l'utilisateur. Par exemple, si vous utilisez l'authentification anonyme, les informations d'identification du compte Anonyme Internet Information Server (IIS) configuré (compte IUSR_<nom_serveur_Web> par défaut) sont utilisées pour traiter la requête de l'utilisateur. Lorsque vous utilisez l'authentification de base, Microsoft Internet Explorer invite l'utilisateur à fournir un ID utilisateur et un mot de passe réseau Windows NT 4.0 ou Windows 2000 valide dont les informations d'identification sont utilisées pour traiter la requête. Pour plus d'informations sur les mécanismes d'authentification pris en charge et leur fonctionnement, reportez-vous à la documentation en ligne Internet Information Server (IIS).

Références

Pour plus d'informations, cliquez sur les numéros ci-dessous pour afficher les articles correspondants dans la Base de connaissances Microsoft.
188715 Global.asa ne s'exécute pas lorsque Visual InterDev crée une application IIS 4.0
288245 PRB : Global.asa ne démarre pas à partir du Serveur Web personnel sous Windows 98
265275 FP2000 : Global.asa ne s'exécute pas sur un site Web FrontPage
173742 CORRECTIF : Le fichier Global.asa ne peut être exécuté en cas d'accès Web restreint

Propriétés

Numéro d'article: 306345 - Dernière mise à jour: vendredi 15 juin 2007 - Version: 5.0
Les informations contenues dans cet article s'appliquent au(x) produit(s) suivant(s):
  • 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
Mots-clés : 
kbprb KB306345
L'INFORMATION CONTENUE DANS CE DOCUMENT EST FOURNIE PAR MICROSOFT SANS GARANTIE D'AUCUNE SORTE, EXPLICITE OU IMPLICITE. L'UTILISATEUR ASSUME LE RISQUE DE L'UTILISATION DU CONTENU DE CE DOCUMENT. CE DOCUMENT NE PEUT ETRE REVENDU OU CEDE EN ECHANGE D'UN QUELCONQUE PROFIT.

Envoyer des commentaires

 

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