Choix champs Texte ou Memo / optimisation

yan35 Messages postés 185 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 20 juin 2013 - 16 avril 2007 à 19:38
yan35 Messages postés 185 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 20 juin 2013 - 16 avril 2007 à 23:39
Bonsoir,

Je voudrais optimiser 1 base Access qui commence à ramer avec 40000 enregistrements d'une longueur de plus de 400 octets, dans 1 table.
J'ai une table qui représente un catalogue et qui est structurée entre autres, d'un champ Reference (entier long), d'un champ Contenu (texte, maxi : 255), comme les 255 caractères ne suffisent pas toujours, j'ai 1 autre table : ExtLib dans la même base de données qui comprend un champ Reference (clé primaire servant de relation avec la table principale) et un champ Libetendu (mémo). Je voudrais optimiser ça, et j'ai besoin de conseils avertis ....
En effet, après analyse, je me suis aperçu que 80% des 40000 enregistrements n'utilisaient que 65 octets dans le champ Contenu. J'ai alors supposé qu'il serait préférable de ramener mon champ Contenu à 1 longueur de 65 et passer les compléments dans le champ mémo de la table ExtLib, mais à ma grande surprise si je réalise cette opération, ma base de données est encore plus volumineuse en octets ! Comment est-il préférable d'optimiser ?
Mettre directement un champ mémo en contenu ? (je ne peux pas, je dois pouvoir trier !...)
Si quelqu'un a une idée ou 1 lien vers des conseils d'optimisation des bases de données MERCI.

4 réponses

nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 avril 2007 à 22:15
Salut,

As tu compacter la base de données car ACCESS grossis au fur et à mesure c'est du à la manière dont access gere les donnees.

Peut etre comme la fat de windows, il faut defragmenter le fichier et la il prend moins de place.

Pour + d'infos http://access.developpez.com/faq/?page=General#Compact.

Voila, et les performances reviendront au passage?

De plus c'est conseillé de mettre les champs memo (ou binaire ...) dans des tables séparé pour éviter de les avoirs dans les requetes (cas des select *)
Donc c'est une bonne manière de travailler ce que tu as fait.


Bon courage.
0
yan35 Messages postés 185 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 20 juin 2013
16 avril 2007 à 22:52
Merci pour ta réponse nhervagault. Effectivement je compacte régulièrement ma base Access, mais ça revient à améliorer les effets de ma base qui grossit mais pas traiter la cause : la structure en elle-même. Merci de m'indiquer que gérer les champs mémo dans 1 table à part c'est déjà mieux, je vais dans le bon sens, je vais continuer mes recherches d'opti de la base et je vais aller voir si je peux trouver des infos sur le lien que tu m'as communiqué.
Merci.
0
nhervagault Messages postés 6063 Date d'inscription dimanche 13 avril 2003 Statut Membre Dernière intervention 15 juillet 2011 37
16 avril 2007 à 23:08
SAlut,

Un lien peut être utile
http://officesystem.access.free.fr/optimisation.htm
0
yan35 Messages postés 185 Date d'inscription dimanche 29 juin 2003 Statut Membre Dernière intervention 20 juin 2013
16 avril 2007 à 23:39
Merci pour ce lien. Il y a pas mal de choses interessantes.
0
Rejoignez-nous