Précédent   Forum des professionnels en informatique > Webmasters - Développement Web > Langages serveur > ASP
ASP Forum sur la programmation ASP. Avant de poster : Cours ASP, FAQ ASP
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 03/08/2006, 11h37   #1
Nouveau Membre du Club
 
Inscription : juillet 2004
Messages : 97
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 97
Points : 32
Points : 32
Par défaut [ASP] Impossible de tester une page lorsque la base mdb est ouverte

Bonjour,

J'ai des pages en ASP utilisant des infos d'une base Access MDB. Quand je lance une page et que j'ai ma base ouverte, j'ai ce message d'erreur :
Code :
1
2
3
Microsoft OLE DB Provider for ODBC Drivers error '80004005' 
 
[Microsoft][ODBC Microsoft Access Driver] Could not use '(unknown)'; file already in use.
La ligne sur laquelle j'ai mon message d'erreur est celle-ci :
Tout en sachant que j'utilise ceci pour me connecter :
Code :
1
2
3
4
5
SQL="SELECT etc..."
SET CONN = Server.CreateObject("ADODB.Connection")
SET RS = Server.CreateObject("ADODB.RecordSet")
Conn.Open "fit_db.mdb"
RS.Open SQL, Conn, 1,1
Pour régler le problème, je dois soit attendre quelques minutes, soit enlever le nom de la base, enregistrer ma page, la lancer, là j'ai :
Puis remettre le nom correct dans la page, l'enregistrer puis la lancer (avec la base fermée cette fois évidemment).

Y'a-t-il un moyen d'éviter tout cela et de pouvoir travailler avec la base ouverte (je travaille avec un serveur Web sur Windows Server 2003, la base est ajoutée dans l'ODBC) ?

Je pense qu'il faut utiliser un autre script de connexion en ASP, du genre :
Code :
1
2
3
SET CONN = Server.CreateObject("ADODB.Connection")
dbPath = Server.MapPath("/fit_db.mdb")
Conn.Open "PROVIDER=MICROSOFT.JET.OLEDB.4.0;DATA SOURCE=" & dbPath
Mais quoi exactement ??
J'ai cherché dans ce forum, mais je n'ai pas trouvé la réponse.

Merci d'avance !
yoyot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2006, 11h44   #2
Membre habitué
 
Inscription : mars 2006
Messages : 124
Détails du profil
Informations personnelles :
Âge : 27
Localisation : France, Rhône (Rhône Alpes)

Informations forums :
Inscription : mars 2006
Messages : 124
Points : 114
Points : 114
je sais pas si ça peut t'aider mais voici ma fonction pour me connecter

Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
 
Function connect
 
   ' Connexion à la base access
    Set objCN = Server.CreateObject("ADODB.Connection")
 
   ' Ouverture de la connexion
   objCN.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=" & _
      Server.MapPath(MDB_URL)
 
   ' Creation d'un recordset
   Set objRs = Server.CreateObject("ADODB.Recordset")
End Function
Eowyn87 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 03/08/2006, 14h34   #3
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Salut,

Il faut attribuer le privilège "modification" à l'utilisateur IUSR_NOMDELAMACHINE sur ta base de données.

Sinon, le fait d'ouvrir la base bloque les accès.

A+
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 14h07   #4
Nouveau Membre du Club
 
Inscription : juillet 2004
Messages : 97
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 97
Points : 32
Points : 32
J'ai ajouté le IUSR_NOMMACHINE, mais tant que j'ai la base ouverte, je ne peux toujours pas voir les pages correctement
yoyot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 16h52   #5
Expert Confirmé Sénior

 
Avatar de Immobilis
 
Inscription : mars 2004
Messages : 5 849
Détails du profil
Informations forums :
Inscription : mars 2004
Messages : 5 849
Points : 5 965
Points : 5 965
Quels droits lui as-tu donné?
Immobilis est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 04/08/2006, 17h52   #6
Nouveau Membre du Club
 
Inscription : juillet 2004
Messages : 97
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 97
Points : 32
Points : 32
Je lui ai donné tous les droits sauf Contrôle total.
A noter que ça m'écrit Internet Guest Account (NOMMACHINE\IUSR_NOMMACHINE)
yoyot est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 26/10/2006, 17h01   #7
Nouveau Membre du Club
 
Inscription : juillet 2004
Messages : 97
Détails du profil
Informations forums :
Inscription : juillet 2004
Messages : 97
Points : 32
Points : 32
Bonjour,

Ca fait un moment que j'ai essayé plusieurs solutions mais j'ai tjs le même problème.

Quand j'utilise ton script Eowyn87, il me semble que j'arrive pas à utiliser le mappath correctement :
Conn.Open "driver={Microsoft Access Driver (*.mdb)}; dbq=Server.MapPath(C:\Inetpub\SiteWeb\monsitexy\database\db_xy.mdb)"

Et j'ai ajouté le compte Internet Guest User mais ça ne change rien.

UNE IDÉE ??? Ca fait des années que j'ai ce problème !!
yoyot est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 12h54.


 
 
 
 
Partenaires

Hébergement Web