Base de données Access devient inutilisable

sigmatc24 Messages postés 53 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 22 avril 2013 - 5 juil. 2007 à 02:51
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 - 6 juil. 2007 à 08:15
Bonjour,

J'utilise VB6 avec Access 97 comme beaucoup de programmeurs, mais un problème assez grave arrive si la base de données est utilisée par plusieurs utilisateurs en même temps:

FORMAT DE BASE DE DONNEES NON RECONU

PROBLEME D'INDEX

Parfois j'arrive à réparer la base de données, et parfois rien à faire, seule une restauration de la dernière sauvegarde résoud le problème

Bon ce problème n'est pas systématique heureusement mais disons périodique

Mes questions sont les suivantes:

Y'a t-il un moyen pour iradiquer cette anomalie ?, MAJ du moteur Jet par exemple (j'ai déjà mis à jour vers 3.51) mais sans grands résultat

Passer à access 2000 ou 2003 aiderait t-il à outrepasser ce problème

ADO est t-il plus fiable que DAO

Toutes les astuces et suggestions seraient les bienvenues

Merci d'avance

7 réponses

spamito Messages postés 183 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 mars 2013
5 juil. 2007 à 02:55
D'après mon expérience en VB 6 je trouve que ADO est plus fiable. Concernant la connexion à la base de données, ce n pas la peine de la convertir en 2000 ou 2003. J'aimerai bien savoir comment effectuez vous la connexion, à travers quoi ?
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
5 juil. 2007 à 08:15
Salut, dans ton appli, les utilisateurs sont connectés en permenance ou bien juste quand il font des opérations sur la base ?

Car s'il la base n'est pas raffraichie et que plusieurs utilisateurs font des opérations dessus en meme temps, ca va poser des pbs.
0
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
5 juil. 2007 à 08:47
Salut,

Oui, comme dit plus haut, préfère ADO à DAO...En plus l'un des avantage de ADO, c'est qua, quand tu fais un application en VB6, tu pilotes donc une Bdd Access, sans pour autant avoir besoin de lui sur le poste où tu utilises ton apllication...

Après, ce que tu peux faire, c'est intégrer des requêtes SQL à ton apllication pour la rendre plus rapide...

Une idée sur la question ? Fait un tour dans la catégorie : Base de données, il y  a pleins de source se rapportant à ADO...

Sur ce..Bonne prog et bonne journée à toi et à tous...

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
sigmatc24 Messages postés 53 Date d'inscription dimanche 29 avril 2007 Statut Membre Dernière intervention 22 avril 2013
5 juil. 2007 à 15:20
Bonjour et merci pour toutes vos réponses

En réponse à Spamito, je me connecte à la base de données VIA DAO pour certains modules et VIA ADO pour d'autres. Est ce une bonne chose ou faut -il trancher pour un seul type de connexion ?

En réponse à Nicko11, J'ouvre la base de données dans l'evènement LOAD de l'écran principal pour ne plus la fermer que dans l'évènement unload du même écran.
Donc un seul .OpenDatabase et un seul .Close de la base de données
Peux tu m'indiquer comment raffraichir une base de données avant d'effectuer un traitement dessus ?

En réponse à Exploreur, même en utilisant DAO, tu distribues seulement quelques .dll pour pouvoir utiliser une base access, et concernant SQL, c'est ce que je fais en construisant le Recordset, toujours car avec un balayage classique, certains traitement prennent une eternité surtout si la table contient plusieurs milliers d'enregistrements.
0

Vous n’avez pas trouvé la réponse que vous recherchez ?

Posez votre question
cs_Exploreur Messages postés 4821 Date d'inscription lundi 11 novembre 2002 Statut Membre Dernière intervention 15 novembre 2016 15
5 juil. 2007 à 15:35
Salut,

Est ce une bonne chose ou faut -il trancher pour un seul type de connexion ?

>> Faut trancher, c'est soit l'un ou l'autre à mon sens..

A+
Exploreur

 Linux a un noyau, Windows un pépin

 
0
spamito Messages postés 183 Date d'inscription samedi 24 mars 2007 Statut Membre Dernière intervention 30 mars 2013
6 juil. 2007 à 00:55
Comme le dit EXPLOREUR, il faut trancherpour un seul type de connexion.
0
cs_Nicko11 Messages postés 1141 Date d'inscription mercredi 7 mars 2007 Statut Membre Dernière intervention 19 septembre 2007 3
6 juil. 2007 à 08:15
Je pense qu'en connectant les utilisateurs en permanance, tu leur permets de modifier les données en meme temps et cela provoque certainement des erreurs. Mais tu peux utiliser ces erreurs pour detecter les conflits (ON ERROR). Dans ce cas, tu pourrais demander a l'utilisateur de réiterer l'opération plus tard (ou le faire par code).
0
Rejoignez-nous