cs_AzertyH
Messages postés69Date d'inscriptionsamedi 25 mars 2006StatutMembreDernière intervention18 janvier 2007
-
4 juin 2006 à 07:42
bulbizzard
Messages postés1Date d'inscriptionmercredi 27 août 2003StatutMembreDernière intervention 6 octobre 2008
-
6 oct. 2008 à 11:53
Bonjour,
Je viens de réaliser un logiciel avec VB2005 et une base de données Access. Je m'adresse aux personnes qui connaissent bien Vb.net + Access, car m'a question n'est pas une question en générale, mais bien spécifique à ces 2 logiciels de dévellopement!
Faut-il gérer l'accès concurentielle à ma base de données, ou, est-ce-que VB2005 gère lui-même les accès à cette base?
Pour détailler un peu plus...
J'ai un soft en VB2005 et une base ACCESS. Cette dernière est placée sur le réseau. Le logiciel en VB2005 est placé sur plusieurs PC. En fait , le soft en VB2005 exploite les données de ma base ACCESS.
Mais, il faut penser que tôt ou tart deux utilisateurs qui utilisent le soft vb2005 (sur 2 PC différents), mettront occasionellement ma base de données à jours et en même temps...
Donc là, normalement, y a problème! Mais, j'espère que VB2005 à la faculté de gerer ces 2 utilisateurs simultanés? Remarque: On utilise " UPDATE " pour mettre à jour la BBD.
Donc voilà, je me bas pour savoir comment sa marche, mais je ne trouve décidément pas! J'insiste à m'adresser à des personnes compétantes dans mon cas très précis (et non pas des cas similaires venant d'autres softs de dévelloppement). Pouvez vous me donner des liens ou je pourais trouver du code en VB2005 (ou 2003), si il faut programmer l'accès concurenciel.
alextozo
Messages postés3Date d'inscriptionmercredi 27 juin 2001StatutMembreDernière intervention31 mars 2007 3 avril 2007 à 16:33
Bonjour,
Je ne comprends pas autour de quoi tourne le polemique. Le probleme est simple.
Celui qui pose la question connqit-il ce qu'il veut faire ou est-il en train d'embrouiller les gens?
Quelque soit les cqs moi je lui propose la solution suivante et que moi meme je pratique actuellement pour une entreprise en attente de passer en SQL Saerver.
Vb 2005 se connecte à tout type de base de donées du moins la majorité connu.
Access est l'un des bons gestionnaire de base de données et le plus simple et compatible tout produit office.
Tu as un réseau je suppose de trois postes A B et C
C est le serveur.
Tu crées un dossier BASE sur le serveur C sur une des partition donnée
ex: c:\BASE
Tu copies ton fichier de base de données access dans ce dossier
Tu partages ce dossiers en prenan soin de definir les autorisations en controle total par les utilisateurs en question (Ecriture-lecture-Modif-Supression)
Access naturellement sans paramétrage special peut être ouvert par plusieurs utilisateur donc par plusieurs interfaces Visual BAsic sur les machines A et B. Alors tu n'as rien a faire de particulier.
Tu prepares ton interface pour se connecter en Visual Basic.
Il faut savoir que tu as la possibilité de te connecter de deux manières à cette base de données access se trouvant sur le serveur.
Tu crées sur chaque ordinateur un lien ODBC et qui se connecte à la base sur le dossier partagé
Ou tu te connectes directement au fichier en explorant le repertoire partagé sur le serveur.
Et je parie que tu peux connecter meme 6 personnes sur ta base et les difficultés se sentiront rapidement
Access a une taille de 2 gigat donc evite de grosses données comme des images
A partir de 6 personnes tu sens une lenteur surtout si la connection se fait sur la meme table.
Si les utilisateurs doivent utiliser le meme enregistrement, access bloque le premier et attend sa mise à jour, ce qui explique une fois de plus la lenteur.
Si tu as plus de question ecris-moi alexandre.tozo@laposte.net
Mais soit preci et sache decrire tes projets et ce que tu veux faire.
Merci pour ta comprehension
Alexandre
cs_AzertyH
Messages postés69Date d'inscriptionsamedi 25 mars 2006StatutMembreDernière intervention18 janvier 2007 3 avril 2007 à 19:53
Salut alextozo,
Si les utilisateurs doivent utiliser le meme enregistrement, access bloque le premier et attend sa mise à jour
Voilà, ce que tu dit, c'est exactement ce que je recherche comme réponse. Seulement pour pouvoir y répondre il faudrait me donner des preuves.
Et tu sure que lorsque plusieurs Visual Basic accèdent au même enregistrement en même temps dans access, y a pas de bug?
Si c'est vrai alors, dois-je en déduire qu' Access bloque l'access à l'autre utilisateur qui souhaite accéder au même enregistrement? Mais alors dans ce cas, comment l'interface visual basic réagit lorqu'Access bloque? Visual Basic comprend-t-il ce blocage et quelle est alors sa réaction? Attent-il jentillement que l'autre utilisateur ferme sa connection à la base de donnée? Dans ce cas plutôt "sinchrone", il y aurait un blocage de visual basic sur le pc du client et pendant le temps que l'autre finisse sa requette à Access.
Voilà un échantillon de ce que je trouve pas très claire, dans l'accès concurentielle à une base access et Visuale Basic 2005. Pour que je sois convincu je dois d'abord comprendre tout ce qui ce passe!
Merci pour votre aide
Vous n’avez pas trouvé la réponse que vous recherchez ?
bulbizzard
Messages postés1Date d'inscriptionmercredi 27 août 2003StatutMembreDernière intervention 6 octobre 2008 6 oct. 2008 à 11:53
bulbizzard
j'ai moi aussi développé une application comme la tienne. Et je peux te confirmer qu'ACCESS gère trés biens les accés simultanés à une base postée sur un serveur distant. Pour m'en assuré j'ai effectué un test probant: sur les 3 machines qui attaquent la même base j'ai programmé 3 routines qui se chargent d'écrire des enregistrements en boucle c'est à dire 1000 records dont un champ pour identifier la machine émettrice bien entendu. j'ai lancé les routines en même temps Et là oh stupéfaction ! aucun enregistrement n'a été perdu et aucun plantage ne s'est produit : vive ACCESS !!!! Il est bien entendu qu'a la création de ta base access tu dois la paramétrer de tel sorte qu'elle accepte les accés simultanés. j'espère t'avoir suffisamment renseigné sinon n'hésites pas à me le faire savoir