Précédent   Forum des professionnels en informatique > Bases de données > Firebird > Débuter
Débuter Forum d'entraide pour débuter avec Firebird
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 05/05/2006, 15h25   #1
Nouveau Membre du Club
 
Inscription : septembre 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 92
Points : 34
Points : 34
Par défaut Gestion de version (versioning)

Bonjour, j'ai vu dans la présentation de Interbase 7.5, qu'elle gérait le versioning des bases de données : http://www.mailsoft.fr/borland-inter...dows-p-83.html

Ma question :
Est-ce que firebird fait la même chose?
En effet je gère une base de données IB 5.6 , et je dois la migrer soit en Firebird soit en IB 7.5. Tout dépendra du prix (y a pas foto c'est FB 1.5) et entre autre de cette fonctionnalité. En effet dès que je fais une modif dans la base : ajout nouvelle table, nouvelle colonne... Je dois déployer les scripts de modification de ma base. Le pb c'est que je dois redéployer également un nouvelle exécutable. Est-ce que le versioning proposé par IB 7 règle ce genre de pb.

Merci d'avance.



delphi5user est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2006, 15h51   #2
Membre Expert
 
Avatar de Barbibulle
 
Frédéric
Inscription : octobre 2002
Messages : 1 722
Détails du profil
Informations personnelles :
Nom : Frédéric
Âge : 42

Informations forums :
Inscription : octobre 2002
Messages : 1 722
Points : 2 025
Points : 2 025
Vous confondez les versions de votre logiciel ou de l'architecture de votre base et le mécanisme de "versioning" utilisé par interbase et Firebird pour gérer les accès conccurentiels aux données de la base.

L'autre technique utilisé par les autres SGBD est le 'locking' qui consiste à verouiller les données qui sont mise à jours.

Mais votre exemple n'est pas tout a fait vrai car si vous ajoutez une table ou colonne, celà ne dois pas poser de problème à vos anciens exécutables. Par contre le nouvel exécutable ne fonctionnera pas avec l'ancienne base.
Le problème se pose c'est si vous supprimez une table ou colonne. Là en effet l ancien exécutable va planter lorsqu'il essayera d'accèder à la colonne ou table supprimée.
Barbibulle est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 05/05/2006, 16h07   #3
Nouveau Membre du Club
 
Inscription : septembre 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 92
Points : 34
Points : 34
Merci.
C'est là mon problème.
Une fois que la base est mise à jour avec mes scripts de modification de structure (alter, ...) elle tourne correctement avec mon nouvel exe : Normal!
Par contre mon nouvel exe ne fonctionnera pas avec une ancienne base : si je fait appel à une donnée qui n'est pas dans mon ancienne bd mon exe va planter: effectivement je peux gérer une exception mais bon...
Je ne crois pas qu'i y ait de solutions miracles : a savoir faire fonctionner une base n-1, n-2, n avec un Exe unique.
delphi5user est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 08/05/2006, 08h36   #4
Membre émérite
 
Avatar de Andry
 
Inscription : juillet 2002
Messages : 1 109
Détails du profil
Informations personnelles :
Localisation : Madagascar

Informations forums :
Inscription : juillet 2002
Messages : 1 109
Points : 949
Points : 949
Envoyer un message via MSN à Andry
Cela peut se faire mais ça demande beaucoup de temps et aussi possible seulement si c'etais appliqué des la conception de la première version.
En effet, lors de mes dev, j'ajoute une table qui contient seulement l'information sur la Bdd à savoir la version, et autres infos. Cette table me sert de repère et dans mes classes sous delphi, les methodes et fonctions doit faire reference à cette repère afin que même si l'executable ou la table change de version, tout fonctionne normalement.
Mais cette technique aussi a un incovenient :
- la compatibilité ascendante de la structure de la BDD.
- plus de temps de developpement
- possibilité de non optimisation.
- etc etc

A+
__________________
On progresse .....
Andry est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/05/2006, 09h31   #5
Nouveau Membre du Club
 
Inscription : septembre 2004
Messages : 92
Détails du profil
Informations forums :
Inscription : septembre 2004
Messages : 92
Points : 34
Points : 34
Merci pour ces réponses.

Bonne journée de dev
delphi5user est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité Cette discussion est résolue.
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 11h43.


 
 
 
 
Partenaires

Hébergement Web