Bonjour Michel
pourquoi et comment cette optimisation a t elle réduit son volume ?
L'explication est donnée dans la fenêtre de lancement de l'optimisation !
Pourquoi optimiser ma base de données ?
Si l'ordinateur n'existait pas, c'est sur une série de fiches cartonnées que vous écririez votre généalogie. Il
vous faudrait alors sans cesse utiliser une gomme et un crayon. Et à chaque rature, votre fiche garderait
une trace. De même, après avoir gommé une phrase ou un paragraphe, cela laisserait des espaces vides.
Heureusement, vous avez un ordinateur !
Pourtant, subsiste le même souci. A la différence que ce ne sont plus vos fiches qui sont raturées, mais la
base de données...
L'optimisation a pour but de rendre "propres" vos données, et de les organiser afin d'en rendre l'accès encore
plus rapide, et aussi vous faire gagner un peu de place sur votre disque dur.
Pensez à optimiser votre base régulièrement. Cette petite attention lui fera le plus grand bien.
"mais catastrophe lorsque j'ouvre Ancestro un message m'indique : size Mismatch-FieldEV_IND_DESCRIPTION size is too small for data"
Cette mésaventure (qui est arrivée à de nombreuses personnes à l'époque) ne peut pas se résoudre dans la version qui pose problème, car on ne peut plus accéder aux événements concernés pour "rogner" le champ
Description à 60 caractères max.
Il y a donc 2 solutions :
- faire un export gedcom puis le réimporter. Le problème sera automatiquement résolu car les Descriptions trop longues seront tronquées, mais vous perdrez les informations si vous ne les avez pas notées ailleurs auparavant
- revenir à une version précédente, et raccourcir le contenu de chaque champ
Description à 60 caractères maximum
Dans les 2 cas, il faut lister les événements à problème et le contenu de leurs champs
Description. C'est pour faire cela qu'on vous propose d'utiliser le BOA :
Ce que je proposais à l'époque :
Attention, la mise à jour pourrait faire surgir un problème sur certains individus, dû à la réduction du champ Description à 60 caractères dans les événements individuels.
Solution : avant la mise à jour, il faut repérer les individus concernés et réduire "à la main" le contenu de ces champs.
Pour cela, le mieux, c'est d'utiliser le BOA :
1 - copier le code ci-dessous et le coller dans le cadre "Requête SQL" de la partie SQL du BOA à la place de "select * from individu where kle_dossier=1" :
SELECT
I.KLE_DOSSIER,
I.CLE_FICHE AS NIP,
I.NOM,
I.PRENOM,
I.DATE_NAISSANCE,
E.EV_IND_TYPE,
E.EV_IND_TITRE_EVENT,
E.EV_IND_DESCRIPTION
FROM
INDIVIDU I,
EVENEMENTS_IND E
WHERE
(I.CLE_FICHE = E.EV_IND_KLE_FICHE) AND
(STRLEN(E.EV_IND_DESCRIPTION) > 60)
ORDER BY
I.KLE_DOSSIER,
I.NOM,
I.PRENOM
2 - appuyer sur le bouton [ Exécuter requête ]
3 - si le BOA te répond "Pas d'enregistrements sélectionnés", c'est qu'il n'y a pas d'individus concernés, tu peux tout fermer et faire la mise à jour.
sinon : le BOA te liste tous les individus, classés par N° de dossier (KLE Dossier) puis par ordre alphabétique. S'il y en a peu, il suffit de les noter puis de passer au point suivant. Sinon, tu peux exporter cette liste en html grâce à un clic droit de souris sur la page. Tu enregistres ta liste sur le bureau par exemple pour l'avoir à portée de main.
4 - Pour chacun des individus obtenus, tu vas dans l'événement concerné et tu "rognes" le champ Description (60 caractères max). Tu peux mettre le surplus dans la partie Notes.
5 - Quand tu as fini, tu recommences au point n°1 pour voir si tu n'as oublié personne.
J'espère que c'est plus clair ainsi ?