2 appli sur une base access - VB/VBA/VBS - Programmation
Marsh Posté le 19-01-2005 à 17:53:04
c'est moi ou Access ne supporte par les connections concurrentes ?
Marsh Posté le 19-01-2005 à 17:59:22
oui je n'écris rien dedans je fais juste des requettes pour récupérer de l'info
Marsh Posté le 19-01-2005 à 18:38:55
On peut tout à fait se connecter à plusieurs sur une base Acces (la doc MS déconseille cependant plus de 5 accès simultanés sur une même base).
Marsh Posté le 19-01-2005 à 18:41:07
lloiyo a écrit : oui je n'écris rien dedans je fais juste des requettes pour récupérer de l'info |
Essaye quand même de virer le mode=read, ça peut pas faire de mal.
Marsh Posté le 19-01-2005 à 18:49:32
Suppression du mode=Read
L'erreur a changée:
"Impossible d'utiliser "; fichier en cours d'utilisation"
Marsh Posté le 19-01-2005 à 18:55:21
J'affine un peu ma description du bug
Je lance l'ancienne appli access cré le fichier olb
Je lance la nouvelle appli la première connexion fonctionne :
Public Sub Connexion_Test()
ConnectionTestString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Z:\DVPT\Comp.mdb;Mode=Read"
Dim Conn_test As New OleDbConnection(ConnectionTestString)
Try
Conn_test.Open()
Catch ex As OleDbException
MsgBox(ex.Message)
Finally
Conn_test.Close()
End Try
End Sub
En fin de sub, je ferme donc la connection
Mais l'exeption OLdb se produit si je veux faire une nouvelle requete et donc ouvrir une nouvelle connexion
Marsh Posté le 21-01-2005 à 14:26:19
Je n'ai pas une grande expérience de programmation:
la seule solution que j'ai trouvée est de laisser la connexion de départ ouvert et travailler au travers de celle ci.
Je la ferme seulement a la fin de l'application.
Marsh Posté le 21-01-2005 à 20:21:44
lloiyo a écrit : Je n'ai pas une grande expérience de programmation: |
C'est une très bonne solution, ça t'évite de te taper tout le processus de connexion à chaque requête
Marsh Posté le 19-01-2005 à 17:51:30
Bonjour,
VOici un problème que je rencontre:
Dans ma boite nous avons un appli VB qui interroge une base de données access sur le reseau.
Je développe une petite interface qui interoge égalment cette base pour extraire des informations.
voici mon code de connection:
j'effectue un test a l'ouverture du programme pour verifier la connectivité a la base
Public Sub Connexion_Test()
ConnectionTestString = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Z:\DVPT\Comp.mdb;Mode=Read"
Dim Conn_test As New OleDbConnection(ConnectionTestString)
Try
Conn_test.Open()
Catch ex As OleDbException
MsgBox(ex.Message)
Finally
Conn_test.Close()
End Try
End Sub
Si l'ancienne application est lancée, elle doit vérouiller le fichier access.
Le message d'exeption OledB qui est découle est : "Impossible de vérouiller le fichier"
Pensez vous qu'il est possible d'intéroger la meme base avec deux applications différentes.
Sinon y'a t'il une solution pour gérer une base "miroir" pour la deuxième application ?
Merci d'avance
Mathieu