Résolution des problèmes d'autorisations, des messages d'erreur Microsoft et des messages d'erreur MySQL dans Dreamweaver.
L’interface utilisateur a été simplifiée sous Dreamweaver et versions ultérieures. Par conséquent, il se peut que vous ne trouviez pas certaines options décrites dans cet article sous Dreamweaver et versions ultérieures. Pour plus d’informations, consultez cet article.
Résolution des problèmes d'autorisation
Un des problèmes les plus courants est l'insuffisance des autorisations de dossier ou de fichiers. Si votre base de données se trouve sur un ordinateur Windows 2000 ou Windows XP et que vous recevez un message d'erreur lorsque vous essayez d'afficher une page dynamique dans un navigateur web ou en vue En direct, l'erreur peut être due à un problème d'autorisations.
Le compte Windows tentant d'accéder à la base de données ne dispose pas d'autorisations suffisantes. Le compte peut être soit le compte Windows anonyme (par défaut, IUSR_computername) soit un compte utilisateur spécifique, si la page a été sécurisée pour un accès authentifié.
Vous devez modifier les autorisations pour donner au compte IUSR_computername les autorisations correctes afin que le serveur web puisse accéder au fichier de base de données. De plus, le dossier contenant le fichier de base de données doit également disposer de certaines autorisations pour permettre l'écriture dans cette base de données.
Si la page est destinée à être accessible de manière anonyme, donnez au compte IUSR_computername un contrôle total sur le dossier et le fichier de base de données, comme décrit dans la procédure ci-dessous.
De plus, si le chemin d'accès à la base de données est référencé en utilisant UNC (\\Server\Share), assurez-vous que les autorisations de partage donnent au compte IUSR_computername un accès complet. Cette étape s'applique même si le partage se trouve sur le serveur web local.
Si vous copiez la base de données depuis un autre emplacement, elle peut ne pas hériter des autorisations de son dossier de destination et vous devrez peut-être modifier les autorisations pour la base de données.
Vérification ou modification des autorisations du fichier de base de données (Windows XP)
Cette étape s'applique uniquement si vous utilisez un système de fichiers NTFS. Si vous disposez d'un système de fichiers FAT, la boîte de dialogue n'a pas d'onglet Sécurité.
La boîte de dialogue vous propose alors davantage d'options.
Vérification ou modification des autorisations du fichier de base de données (Windows 2000)
Cette étape s'applique uniquement si vous utilisez un système de fichiers NTFS. Si vous disposez d'un système de fichiers FAT, la boîte de dialogue ne comportera pas d'onglet Sécurité.
Pour plus de sécurité, des autorisations peuvent être définies de sorte que l'autorisation de lecture soit désactivée pour le dossier web contenant la base de données. Parcourir le dossier ne sera pas autorisé, mais les pages web pourront toujours accéder à la base de données.
Pour plus d'informations sur le compte IUSR et les autorisations du serveur web, consultez les notes techniques suivantes sur le centre d'assistance d'Adobe :
Comprendre l'authentification anonyme et le compte IUSR à l'adresse www.adobe.com/go/authentication
Configuration des autorisations d'un serveur Web IIS à l’adresse www.adobe.com/go/server_permissions_fr
Résolution des messages d'erreur Microsoft
Ces messages d'erreur Microsoft peuvent se produire lorsque vous demandez une page dynamique au serveur si vous utilisez Internet Information Server (IIS) avec un système de base de données Microsoft tel qu'Access ou SQL Server.
Adobe ne fournit pas d'assistance technique pour les logiciels tiers tels que Microsoft Windows et IIS. Si ces informations ne résolvent pas votre problème, contactez l'assistance technique Microsoft ou visitez le site web d'assistance Microsoft à l'adresse http://support.microsoft.com/.
Pour plus d’informations sur les erreurs de type 80004005, reportez-vous à la section « Guide de dépannage pour les erreurs de type 80004005 au niveau des composants Active Server Pages et Microsoft Data Access (Q306518) » sur le site Web de Microsoft à l'adresse http://support.microsoft.com/default.aspx?scid=kb;fr-fr;Q306518.
[[Reference]80004005—Nom de source de données introuvable et aucun pilote par défaut spécifié]
Cette erreur se produit lorsque vous tentez d'afficher une page dynamique dans un navigateur web ou en mode Live. Le message d'erreur peut varier selon votre base de données et votre serveur web. D'autres variations du message d'erreur comprennent :
80004005—Driver's SQLSetConnectAttr failed (Le paramètre SQLSetConnectAttr du pilote a échoué)
80004005 - General error Unable to open registry key 'DriverId' (Erreur générale. Impossible d'ouvrir la clé du registre DriverId)
Les causes et les solutions possibles sont les suivantes :
La page ne parvient pas à trouver le DSN. Assurez-vous qu'un DSN a été créé sur le serveur Web et sur l'ordinateur local.
Le DSN peut avoir été défini en tant que DSN utilisateur, et non en tant que DSN système. Supprimez le DSN utilisateur et créez un DSN système pour le remplacer.
Si vous ne supprimez pas le DSN utilisateur, les noms DSN en double engendrent de nouvelles erreurs ODBC.
Si vous utilisez Microsoft Access, le fichier de base de données (.mdb) peut être verrouillé Ce verrouillage peut être la conséquence d'un DSN avec un nom différent accédant à la base de données. Dans l'Explorateur Windows, recherchez le fichier de verrouillage (.ldb) dans le dossier contenant le fichier de base de données (.mdb) et supprimez-le. Si un autre DSN pointe vers le même fichier de base de données, vous pouvez supprimer ce DSN pour empêcher tout risque d'erreur à l'avenir. Redémarrez l'ordinateur après avoir apporté des modifications.
[[Reference]80004005—Impossible d'utiliser '(inconnu)' ; fichier déjà en cours d'utilisation]
Cette erreur se produit lorsque vous utilisez une base de données Microsoft Access et tentez d'afficher une page dynamique dans un navigateur web ou en mode Live. Une autre variation de ce message d'erreur est « 80004005—Le moteur de base de données Microsoft Jet ne peut pas ouvrir le fichier (inconnu). »
La cause probable est un problème d'autorisations. Voici quelques causes et solutions spécifiques :
Le compte utilisé par Internet Information Server (généralement IUSR) pourrait ne pas avoir les autorisations Windows correctes pour une base de données basée sur fichier ou pour le dossier contenant le fichier. Vérifiez les autorisations du compte IIS (IUSR) dans le gestionnaire d'utilisateurs.
Vous n'avez peut-être pas l'autorisation de créer ou de supprimer des fichiers temporaires. Vérifiez les autorisations attribuées au fichier et au dossier. Assurez-vous d'avoir l'autorisation de créer ou de supprimer tous les fichiers temporaires.Les fichiers temporaires sont généralement créés dans le même dossier que la base de données, mais le fichier peut aussi être créé dans d'autres dossiers tels que /Winnt.
Dans Windows 2000, la valeur de délai d'expiration peut devoir être modifiée pour le DSN de la base de données Access. Pour modifier la valeur de délai d'expiration, sélectionnez Démarrer > Paramètres > Panneau de contrôle > Outils d'administration > Sources de données (ODBC). Cliquez sur l'onglet Système, sélectionnez le DSN correct et cliquez sur le bouton Configurer.Cliquez sur le bouton Options et fixez la valeur de délai d'expiration de la page à 5000.
Si vous rencontrez toujours des problèmes, consultez les articles suivants de la base de connaissances Microsoft :
PRB : 80004005 « Impossible d'utiliser '(inconnu)' ; fichier déjà en cours d'utilisation » à l'adresse http://support.microsoft.com/default.aspx?scid=kb;en-us;Q174943.
PRB : la connectivité de la base de données Microsoft Access échoue dans Active Server Pages à http://support.microsoft.com/default.aspx?scid=kb;en-us;Q253604.
PRB : Erreur « Impossible d'ouvrir le fichier inconnu » lors de l'utilisation d'Access à l'adresse http://support.microsoft.com/default.aspx?scid=kb;fr-fr;Q166029.
[[Référence]80004005—Échec de connexion()]
Cette erreur se produit lorsque vous utilisez Microsoft SQL Server et tentez d'afficher une page dynamique dans un navigateur web ou dans l'affichage en direct.
Cette erreur est générée par SQL Server s'il n'accepte pas ou ne reconnaît pas le compte de connexion ou le mot de passe soumis (si vous utilisez la sécurité standard), ou si un compte Windows ne correspond pas à un compte SQL (si vous utilisez la sécurité intégrée).
Les solutions possibles sont les suivantes :
Si vous utilisez la sécurité standard, le nom du compte et le mot de passe peuvent être incorrects. Essayez le compte et le mot de passe de l'administrateur système (UID= « sa » et aucun mot de passe), qui doivent être définis dans la ligne de chaîne de connexion. (Les DSN ne stockent pas les noms d'utilisateur et les mots de passe.)
Si vous utilisez la sécurité intégrée, vérifiez le compte Windows appelant la page et trouvez son compte SQL associé (le cas échéant).
SQL Server ne permet pas de trait de soulignement dans les noms de compte SQL. Si quelqu'un associe manuellement le compte Windows IUSR_nomdelamachine à un compte SQL du même nom, cela échouera.Mappez tout compte qui utilise un trait de soulignement à un nom de compte sur SQL qui n'utilise pas de trait de soulignement.
[[Référence]80004005—L'opération doit utiliser une requête modifiable]
Cette erreur se produit lorsqu'un événement met à jour un jeu d'enregistrements ou insère des données dans un jeu d'enregistrements.
Voici les causes possibles et les solutions :
Les autorisations définies sur le dossier contenant la base de données sont trop restrictives.Les privilèges IUSR doivent être définis en lecture/écriture.
Les autorisations sur le fichier de base de données lui-même n'ont pas de privilèges complets de lecture/écriture en vigueur.
La base de données peut être située en dehors du répertoire Inetpub/wwwroot. Bien que vous puissiez visualiser et rechercher les données, il est possible que vous ne puissiez pas les mettre à jour si la base de données ne se trouve pas dans le répertoire wwwroot.
Le jeu d'enregistrements repose sur une requête ne pouvant pas être mise à jour. Les jointures sont de bons exemples de requêtes non modifiables dans une base de données. Restructurez vos requêtes pour qu'elles soient modifiables.
Pour plus d'informations sur cette erreur, consultez « PRB : ASP 'Erreur La requête n'est pas modifiable' Lorsque vous mettez à jour l'enregistrement de table », dans la base de connaissances Microsoft à http://support.microsoft.com/default.aspx?scid=kb;en-us;Q174640.
[[Référence]80040e07—Incompatibilité de type de données dans l'expression de critères]
Cette erreur se produit lorsque le Serveur tente de traiter une page contenant un comportement serveur Insérer un enregistrement ou Mettre à jour un enregistrement, et que le comportement serveur tente de définir la Valeur d'une colonne Date/Heure dans une base de données Microsoft Access sur une chaîne vide (« »).
Microsoft Access dispose d'un typage de données strict ; il impose un ensemble rigoureux de règles sur les valeurs de colonnes spécifiées.La valeur de chaîne vide dans la requête SQL ne peut pas être stockée dans une colonne Date/Heure d'Access.Actuellement, la seule solution de contournement connue consiste à éviter d'insérer ou de mettre à jour les colonnes Date/Heure dans Access avec des chaînes vides ("") ou avec toute autre valeur qui ne correspond pas à la plage de valeurs spécifiée pour le type de données.
[[Référence]80040e10—Paramètres insuffisants]
Cette erreur se produit lorsqu'une colonne spécifiée dans votre requête SQL n'existe pas dans la table de base de données. Vérifiez les noms de colonnes dans votre table de base de données par rapport à la requête SQL. La cause de cette erreur est souvent une erreur typographique.
[[Référence]80040e10—Champ COUNT incorrect]
Cette erreur se produit lorsque vous prévisualisez une page contenant un comportement serveur Insérer un enregistrement dans un navigateur web et tentez de l'utiliser pour insérer un enregistrement dans une base de données Microsoft Access.
Vous tentez peut-être d'insérer un enregistrement dans un champ de base de données qui contient un point d'interrogation (?) dans son nom de champ. Le point d'interrogation est un caractère spécial pour certains moteurs de base de données, y compris Microsoft Access, et ne doit pas être utilisé pour les noms de tables de base de données ou les noms de champs.
Ouvrez votre système de base de données et supprimez le point d'interrogation (?) des noms de champs, et mettez à jour les comportements serveur de votre page qui font référence à ce champ.
[[Référence]80040e14—Erreur de syntaxe dans l'instruction INSERT INTO]
Cette erreur se produit lorsque le serveur tente de traiter une page contenant un comportement serveur Insérer un enregistrement.
Cette erreur résulte généralement d'un ou plusieurs des problèmes suivants avec le nom d'un champ, objet ou variable dans la base de données :
Utilisation d'un mot réservé en tant que nom. La majorité des bases de données disposent d'un jeu de mots réservés. Par exemple, « date » est un mot réservé et ne peut pas être utilisé pour les noms de champs d'une base de données.
Utilisation de caractères spéciaux dans le nom, tels que ceux mentionnés ci-dessous :
. / * : ! # & - ?
Utilisation d'un espace dans le nom.
L'erreur peut également survenir lorsqu'un masque d'entrée est défini pour un objet de la base de données et que les données insérées ne sont pas conformes au masque.
Pour résoudre le problème, évitez d'utiliser des mots réservés tels que « date », « name » « select », « where » et « level » lorsque vous spécifiez des noms de colonnes dans votre base de données. Eliminez également les espaces et les caractères spéciaux.
Consultez les pages Web suivantes pour des listes détaillées de mots réservés dans les systèmes de bases de données courants.
Microsoft Access à l'adresse http://support.microsoft.com/default.aspx?scid=kb;fr-fr;Q209187
MySQL à l’adresse http://dev.mysql.com/doc/mysql/en/reserved-words.html
[[Référence]80040e21—Erreur ODBC lors de l'insertion ou de la mise à jour]
Cette erreur se produit lorsque le serveur tente de traiter une page contenant un comportement serveur Mettre à jour un enregistrement ou Insérer un enregistrement. La base de données ne peut pas gérer l'opération de mise à jour ou d'insertion que le comportement serveur tente d'effectuer.
Voici les causes possibles et les solutions :
Le comportement serveur tente de mettre à jour le champ de numérotation automatique d'une table de base de données ou d'insérer un enregistrement dans un champ de numérotation automatique.Étant donné que les champs de numérotation automatique sont remplis automatiquement par le système de base de données, toute tentative de les remplir de façon externe avec une valeur échoue.
Les données que le comportement serveur met à jour ou insère sont d'un type inapproprié pour le champ de base de données, comme insérer une date dans un champ booléen (oui/non), insérer une chaîne dans un champ numérique, ou insérer une chaîne mal formatée dans un champ date/heure.
[[Référence]800a0bcd—BOF ou EOF est vrai]
Cette erreur se produit lorsque vous tentez d'afficher une page dynamique dans un navigateur web ou en vue En direct.
Le problème survient lorsque la page tente d'afficher des données provenant d'un jeu d'enregistrements vide. Pour résoudre le problème, appliquez le comportement serveur Afficher la zone géographique au contenu dynamique à afficher sur la page, comme suit :
Mettez en surbrillance le contenu dynamique sur la page.
Dans le panneau Comportements serveur, cliquez sur le bouton Plus (+) et sélectionnez Afficher la zone géographique > Afficher la zone géographique si le jeu d'enregistrements n'est pas vide.
Sélectionnez le jeu d'enregistrements fournissant le contenu dynamique et cliquez sur OK.
Répétez les étapes 1 à 3 pour chaque élément de contenu dynamique de la page.
Résolution des messages d'erreur MySQL
Un message d'erreur courant que vous pourriez rencontrer lors du test d'une connexion de base de données PHP à MySQL 4.1 est « Le client ne prend pas en charge le protocole d'authentification demandé. »Envisagez de mettre à niveau le client MySQL.
Vous devrez peut-être revenir à une version antérieure de MySQL ou installer PHP 5 et copier certaines bibliothèques de liens dynamiques (DLL). Pour des instructions détaillées, consultez Configuration d'un environnement de développement PHP.
Créez de magnifiques sites web dans Dreamweaver
Concevez, codez et gérez des sites web dynamiques dans un puissant outil tout-en-un.