2009-07-25 6 views
5

Est-ce que quelqu'un a déjà utilisé Access 2007 avec les versions antérieures d'Access (c'est-à-dire les fichiers mdb)?accdb contre mdb. Lequel est le plus rapide/meilleur?

Nous avons été mis à niveau, mais utilisons toujours le format mdb. Certains de nos codes (en particulier Docmd.TransferDatabase acImportReport) sont maintenant incroyablement lents.

J'ai essayé un test initial et converti notre client mdb en accdb et la TransferDatabase ci-dessus semblait mieux fonctionner.

Je me demande maintenant si nous devrions mordre la balle et convertir tous les autres fichiers qui composent l'application. Il n'y a pas besoin de réplication ou de sécurité au niveau de l'utilisateur qui semblent être les seules limitations de la nouvelle version de l'ancien. Nous avons un client mdb, trois bases de données backend et ensuite 3000 mdbs contenant chacun un seul rapport (ne demandez pas!).

La nouvelle version fonctionne-t-elle plus rapidement que l'ancienne - en particulier sur un réseau déjà en difficulté?

+0

MDB est un format natif dans Access 2007, donc un fichier MDB n'est pas du tout un fichier "version antérieure" Les MDB Access 2000, 2002, 2003 et 2007 sont toutes natives d'Access 2007. –

+0

Je pense que l'amélioration des performances est venue à partir de la création d'un nouveau fichier. Essayez de créer un nouveau MDB et d'importer tout ce qu'il contient, et je parie qu'il fonctionnera plus rapidement que votre ancien MDB f. Ront fin. –

+0

Fait un nouveau mdb en 2007 et a importé le lot. Encore plus rapide en utilisant le fichier accdb .... –

Répondre

2

Faire quoi que ce soit de nouveau dans accdb (interface sage); toutes les nouvelles bases de données créent dans MS SQL Server. Laissez les données existantes dans mdb;

si ça marche maintenant, pourquoi s'en prendre à ça? Les mises à niveau matérielles compenseront toute dégradation des performances que vous rencontrez. Tôt ou tard, MS annoncera qu'il arrêtera de supporter mdb dans sa version actuelle de MS Access; À ce stade, il vaut la peine de triage et de commencer à convertir au nouveau format. Mais ne faites pas la base de données accdb. Déplacez-le à quelque chose comme MS SQL Server.

La raison pour laquelle j'attendrais jusqu'à ce que vous soyez forcé par MS est qu'il est peu probable que vous obteniez l'approbation des détenteurs de la bourse pour faire ces changements maintenant; mais quand vous l'avez forcé aussi, leurs cordons de la bourse se relâchent.

+0

Aaah. Nous aimerions passer à SQL Server, mais nous travaillons dans le domaine des affaires plutôt que dans le domaine de la technologie. RAD se développe si vous le souhaitez, nous sommes limités à des outils de bureau tels qu'Excel et Access ... Plus de 50 utilisateurs sur un mdb de 500 Mo sur un réseau choquant - Je suis heureux de ne pas être l'un des utilisateurs finaux! –

+1

Je dis utiliser ACCDB si ACCDB a des fonctionnalités dont vous avez vraiment besoin (comme l'intégration Sharepoint). Si ce n'est pas le cas, restez avec MDB même pour les nouveaux projets, car vous pouvez ensuite l'exécuter sur toutes les versions précédentes d'Access en 2000, plutôt que de vous soucier de la mise à niveau de leurs stations de travail vers A2007. –

+0

Merci David (et re "native" vs "prior"). Tout le monde a été mis à niveau ... et maintenant ils cherchent à obtenir plus de RAM pour tous les PC. –

1

Je doute vraiment qu'il y ait beaucoup d'amélioration de performance dans ACCDB vs MDB bien que je suppose que les fonctions individuelles pourraient être meilleures ou pires. Je dis cela parce que le plus gros goulot d'étranglement est généralement lié au réseau.

Je suggérerais d'exécuter des tests de synchronisation bien. Comparez les deux. Assurez-vous que le MDB est au format A2007 cependant. Quittez le MDB/ACCDB entre les tests sinon Access peut mettre en cache des données. Exécutez le test plusieurs fois et si des différences majeures persistent, relancez-le jusqu'à ce que vous obteniez trois passages à peu près au même moment.

Juste curieux cependant. POURQUOI faites-vous tellement DocMd.TransferDatabase ACImportReport? Ou est-ce que cette partie de vos 3000 BDM contient des rapports?

+0

Spot sur. Cela fait partie de nos 3000 mdbs. Nous avons une application qui prend en charge un grand nombre de rapports différents pour différents clients.Ceux-ci sont importés au moment de l'exécution en fonction du rapport en cours d'exécution. À l'origine, ils se trouvaient tous dans un grand mdb, mais l'importation de ceux-ci était ridiculement lente une fois que vous aviez plus d'une connexion à cette base de données. Avoir des bases de données séparées pour chaque rpt était beaucoup plus rapide. –

+0

Je pense que l'un des gars a joué avec la création d'une bibliothèque pour tous les rapports, mais sans beaucoup de chance. Ces rapports doivent être modifiés un peu, donc nous changeons simplement le rapport sur le réseau et le client prend le nouveau. Personnellement, je ne suis pas un grand fan de la configuration actuelle car nous ne pouvons pas utiliser un mde, ou même savoir que tout notre code compile. –

0

Un test rapide sur une base de données avec 187 références scientifiques de longueur moyenne a montré une réduction de la taille de 1.671.168 octets à 1.306.624.

Voici un article avec quelques avantages & contre:

Access File Formats: ACCDB vs MDB

Ils soulignent avec.accdb de, vous pouvez:

  • Inclure les pièces jointes dans votre base de données
  • Utilisez des champs multivalué
  • acceptent SharePoint et Outlook pour faire confiance à ces fichiers, en raison de « [i] méliorations dans le modèle de sécurité de base de données [qui] permettent pour la validation de la sécurité des fichiers de base de données »
  • ont supposé des améliorations de cryptographie dues à l'utilisation de l'API Windows Cryptographic

Voici un article M $ qui indique comment faire des pièces jointes comme dat abaissera champs d'enregistrement:

Attach files and graphics to the records in your database

Le premier article dit aussi: « Il y a aussi deux limites que vous devriez considérer lors de l'utilisation ACCDB. Les bases de données ACCDB ne prennent pas en charge la sécurité ou la réplication au niveau de l'utilisateur. "J'ai copié une base de données et elle a ouvert sans problème - même dans un répertoire différent, donc je ne sais pas ce que vous ratez en termes de réplication .

note:.. Je ne pouvais pas Enregistrer sous pour le convertir en un fichier .accdb, comme indiqué dans le premier article, je l'ai fichier | Enregistrer & Publish, et laissez-moi

Questions connexes