ASP, reqte mise à jour. de l'aide!!!
Dernière réponse : dans Programmation
:-(
Salut tout le monde, SVP si quelqu'un peut m'aider à
résoudre ce problème. J'ai cherché partout sur internet et
forum mais sans aucune solution.
Le probleme est tres simple, je fait une application web
en ASP, et quand j'execute une requete mise à jour ça me
donne l'erreur suivante (seulement sous win XP) :
Microsoft JET Database Engine error '80004005'
L'opération doit utiliser une requête qui peut être mise à
jour.
Mais sous win98 ça passe sans le moindre problème.
SVP si qqun aurait une idée??????!!!!!! :-( :-( :-(
Salut tout le monde, SVP si quelqu'un peut m'aider à
résoudre ce problème. J'ai cherché partout sur internet et
forum mais sans aucune solution.
Le probleme est tres simple, je fait une application web
en ASP, et quand j'execute une requete mise à jour ça me
donne l'erreur suivante (seulement sous win XP) :
Microsoft JET Database Engine error '80004005'
L'opération doit utiliser une requête qui peut être mise à
jour.
Mais sous win98 ça passe sans le moindre problème.
SVP si qqun aurait une idée??????!!!!!! :-( :-( :-(
Autres pages sur : asp reqte mise jour aide
Lassé par la pub ? Créez un compte
Citation :
Microsoft OLE DB Provider for ODBC Drivers error '80004005'[Microsoft][ODBC Microsoft Access 97 Driver] The Microsoft Jet database engine cannot open the file '(unknown)'. It is already opened exclusively by another user, or you need permission to view its data.
Peut-être est-ce un problème d'utilisateur ou de DSN.
Le soucis ne doit pas provenir de ton système d'exploitation mais de la configuration de la machine ou de la base de données (droits utilisateurs, type d'authentification, ...)
Précise donc de quel type de base il s'agit (access, sqlserver2000, sqlserver2003, ...) et comment tu t'y connectes.
Et ce n'est pas une question de droits d'écriture dans un répertoire, mais bien dans la base (l'utilisateur est enregistré? il est autorisé à manipuler les données? la connexion à la DB fonctionne bien depuis ton poste?)
D'un point de vue général, si le script fonctionne bien sur un poste et pas sur un autre, ce n'est pas le script qui est en cause mais bien la configuration (de la base ou du poste)
Et ce n'est pas une question de droits d'écriture dans un répertoire, mais bien dans la base (l'utilisateur est enregistré? il est autorisé à manipuler les données? la connexion à la DB fonctionne bien depuis ton poste?)
D'un point de vue général, si le script fonctionne bien sur un poste et pas sur un autre, ce n'est pas le script qui est en cause mais bien la configuration (de la base ou du poste)
la base de données Access2000
Et voici le script de connexion :
<%
dim ConnectionString
dim ADO
ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath ("\news\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString=ConnectionString
ADO.Open
%>
Et voici le script de connexion :
<%
dim ConnectionString
dim ADO
ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath ("\news\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString=ConnectionString
ADO.Open
%>
:-P pas de prob pour la boule de cristal.
'''''voici le code de tte la page :
<%@language=VBScript CodePage="1256"%>
<!--#include file="connection.txt"-->
<%
section=request.form("section")
subject=request.form("subject")
body=request.form("body")
%>
<%
Function AddF()
addSQL= "insert into "& section&" (subject,body) values ('"&subject&"','"&body&"')"
ADO.execute(addSQL)
%>
<body>
<p><font face="Simplified Arabic" size="3">Merci..Ajout réussi</font></p>
<%
End Function
%>
<%
If subject="" or body="" then
response.write "Vous n'avez pas saisi tous les champs, retournez et complétez la saisie."
Else
AddF()
End If
%>
<p align="center"><b>Ajout d'informations</b></p>
<form method="POST" action="add_news.asp">
<p><b>Section : <select size="1" name="section">
<option value="general_news">Akhbar moutanawi3a</option>
<option value="tech_news">Akhbar ti9niya</option>
</select></b></p>
<p><b>Titre : <input type="text" name="subject" size="20"></b></p>
<p><b>Contenu :</b></p>
<p><b> <textarea rows="11" name="body" cols="78"></textarea></b></p>
<p><input type="submit" value="Ajouter" name="add"></p>
</form>
<%
ADO.close
Set ADO=Nothing
%>
</body>
'''''voici le code de tte la page :
<%@language=VBScript CodePage="1256"%>
<!--#include file="connection.txt"-->
<%
section=request.form("section")
subject=request.form("subject")
body=request.form("body")
%>
<%
Function AddF()
addSQL= "insert into "& section&" (subject,body) values ('"&subject&"','"&body&"')"
ADO.execute(addSQL)
%>
<body>
<p><font face="Simplified Arabic" size="3">Merci..Ajout réussi</font></p>
<%
End Function
%>
<%
If subject="" or body="" then
response.write "Vous n'avez pas saisi tous les champs, retournez et complétez la saisie."
Else
AddF()
End If
%>
<p align="center"><b>Ajout d'informations</b></p>
<form method="POST" action="add_news.asp">
<p><b>Section : <select size="1" name="section">
<option value="general_news">Akhbar moutanawi3a</option>
<option value="tech_news">Akhbar ti9niya</option>
</select></b></p>
<p><b>Titre : <input type="text" name="subject" size="20"></b></p>
<p><b>Contenu :</b></p>
<p><b> <textarea rows="11" name="body" cols="78"></textarea></b></p>
<p><input type="submit" value="Ajouter" name="add"></p>
</form>
<%
ADO.close
Set ADO=Nothing
%>
</body>
Je repère quelques trucs génant imho:
1) je ne vois pas la création de ADO ni son ouverture (que je soupçonne êtres dans connection.txt)
2) je verrais plutôt:
addSQL= "insert into "& section&" (subject,body) values ('"&subject&"','"&body&"')"
ADO.execute addSQL,n
if (n <> 1) then
response.write "Erreur d'insertion"
end if
3) met un "on error resume next" en tête de script pour que les erreurs s'affichent sans stopper ton script, ça te permettra de mieux débugger.
1) je ne vois pas la création de ADO ni son ouverture (que je soupçonne êtres dans connection.txt)
2) je verrais plutôt:
addSQL= "insert into "& section&" (subject,body) values ('"&subject&"','"&body&"')"
ADO.execute addSQL,n
if (n <> 1) then
response.write "Erreur d'insertion"
end if
3) met un "on error resume next" en tête de script pour que les erreurs s'affichent sans stopper ton script, ça te permettra de mieux débugger.
oui effectivement pour la création de ADO en voici le contenu du fichier connection.txt :
<%
dim ConnectionString
dim ADO
ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath ("\news\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString=ConnectionString
ADO.Open
%>
<%
dim ConnectionString
dim ADO
ConnectionString="Provider=Microsoft.jet.OLEDB.4.0;" & "Data Source=" & Server.MapPath ("\news\database\project.mdb")
Set ADO=Server.CreateObject("ADODB.Connection")
ADO.ConnectionString=ConnectionString
ADO.Open
%>
Salut !
De quel attribut s'agit il ? En fait j'ai le même problème sur une base Access2000.
Je veux mettre à jour une table à partir des données d'une autre table.
Lorsque je fais ma requete j'ai le message d'erreur "L'opération doit utiliser une requête qui peut être mise à jour", pourtant si j'affiche la requete en mode "feuille de données" elle récupère bien les bonnes données dans la table source, mais ne fait pas la mise à jour dans la table cible.
Si par contre je fais une requete de mise à jour sur les même champs, en définissant des valeurs fixes (SET F1=28), la mise à jour se fait bien.
Donc je peux lire la table source et ecrire dans la table cible... mais la mise à jour de l'une vers l'autre génère cette "erreur mystère" lol.
J'ai pu trouver des informations sur cette erreur à l'adresse suivante:
http://support.microsoft.com/kb/463266/fr
Conformément aux recommandations de cette page, j'ai recherché et supprimé les doublons de ma table, définis la colonne contenant les numéros identifiants comme index unique et clé primaire, pour la table source comme pour celle de destination. Les deux tables sont accessibles en lecture et en écriture, mais le message d'erreur persiste et je ne vois plus trop ou chercher.
Voici la requete que j'utilise:
UPDATE [TableB] SET F1 = (SELECT Champ1 FROM TableA_bis WHERE TableA_bis.Champ1 = TableB.F1), F2 = (SELECT Champ2 FROM TableA_bis WHERE TableA_bis.Champ2 = TableB.F2), F8 = (SELECT Champ8 FROM TableA_bis WHERE TableA_bis.Champ8 = TableB.F8)
WHERE EXISTS (SELECT * FROM TableA_bis WHERE TableA_bis.Champ11 = TableB.F11);
Si quelqu'un à une idée...
De quel attribut s'agit il ? En fait j'ai le même problème sur une base Access2000.
Je veux mettre à jour une table à partir des données d'une autre table.
Lorsque je fais ma requete j'ai le message d'erreur "L'opération doit utiliser une requête qui peut être mise à jour", pourtant si j'affiche la requete en mode "feuille de données" elle récupère bien les bonnes données dans la table source, mais ne fait pas la mise à jour dans la table cible.
Si par contre je fais une requete de mise à jour sur les même champs, en définissant des valeurs fixes (SET F1=28), la mise à jour se fait bien.
Donc je peux lire la table source et ecrire dans la table cible... mais la mise à jour de l'une vers l'autre génère cette "erreur mystère" lol.
J'ai pu trouver des informations sur cette erreur à l'adresse suivante:
http://support.microsoft.com/kb/463266/fr
Conformément aux recommandations de cette page, j'ai recherché et supprimé les doublons de ma table, définis la colonne contenant les numéros identifiants comme index unique et clé primaire, pour la table source comme pour celle de destination. Les deux tables sont accessibles en lecture et en écriture, mais le message d'erreur persiste et je ne vois plus trop ou chercher.
Voici la requete que j'utilise:
UPDATE [TableB] SET F1 = (SELECT Champ1 FROM TableA_bis WHERE TableA_bis.Champ1 = TableB.F1), F2 = (SELECT Champ2 FROM TableA_bis WHERE TableA_bis.Champ2 = TableB.F2), F8 = (SELECT Champ8 FROM TableA_bis WHERE TableA_bis.Champ8 = TableB.F8)
WHERE EXISTS (SELECT * FROM TableA_bis WHERE TableA_bis.Champ11 = TableB.F11);
Si quelqu'un à une idée...
Lassé par la pub ? Créez un compte
- Contenus similaires :
Tags :
- ForumMise a jour psp 6
- ForumMise a jour kde
- ForumAide cherche mise a jour dvd shrink
- ForumMise à jour java tous les jours
- ForumRecherche aide mise a jour mio
- solutionsAvg mise a jour chaque jour
- ForumMise a jour java tous les jours
- ForumTelecharger mise a jour wow
- ForumAide mise a jour sims 3
- articlesMinecraft aide mise a jour 1.5
- Voir plus