IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

Administration SQL Server Discussion :

Mettre à jour une base de données chez un client


Sujet :

Administration SQL Server

  1. #1
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut Mettre à jour une base de données chez un client
    Bonjour au forum,

    J'aurai besoin de vos lumière sur un sujet qui me paraît pourtant essentiel mais que je ne retrouve nul part.
    Voilà, j'ai livré une application chez un client avec une base Sql Server.
    Cette application est en cours de développement donc la base va encore évoluer pendant que le client teste au fur et à mesure ce que je lui livre.

    Mon problème, c'est comment identifier toutes les modifs de structure que je vais faire entre 2 livraisons pour pouvoir rejouer chez le client les différents scripts qui permettront de mettre sa base de test à jour.
    Je précise que sa base de test ne peut pas être remplacée à chaque livraison; c'était le cas au début mais il a maintenant besoin que la base s'enrichisse donc pas touche au données.

    Je suis surpris de ne rien trouver sur ce sujet ou alors je ne cherche pas avec les bons mots.
    Si quelqu'un pouvait m'aiguiller car sinon, il me faudra noter toutes mes modifs à la main pour les refaire chez le clients à la main également (avec les risques que cela impliquent)

    Bonne journée à tous

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 770
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 21 770
    Points : 52 726
    Points
    52 726
    Billets dans le blog
    5
    Par défaut
    Soit il fallait avoir une méthode préalable, par exemple en stockant toutes les modif de structure de la base par le biais d'un déclencheur DDL, soit il faut utiliser un outil adéquat comme Power AMC qui permet de partir d'un modèle de données archivé et par rapport aux améliorations effectuées, réaliser le script SQL différentiel.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre éprouvé
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2009
    Messages
    623
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Administrateur de base de données

    Informations forums :
    Inscription : Août 2009
    Messages : 623
    Points : 1 049
    Points
    1 049
    Par défaut
    Il suffit de scripter toutes tes modifications. Ensuite, tu n'auras plus qu'à jouer les scripts sur la base de ton client.
    Sinon tu peux utiliser des logiciels qui comparent la structure des bases de données. Tu peux le faire avec visual studio qui te fournira un script ou utiliser le DB Compare de Kankuru qui te permettra de connaitre les différences entre ta base client et ta base de dev.
    Blog Perso | Kankuru (logiciel gratuit pour SQL Server)

  4. #4
    Futur Membre du Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Novembre 2011
    Messages
    7
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : Transports

    Informations forums :
    Inscription : Novembre 2011
    Messages : 7
    Points : 6
    Points
    6
    Par défaut
    Je pensais (j'espérais) vraiment qu'un outil puissant et complet comme Sql Server aurais une fonction permettant de générer un script différentiel depuis un instant t que l'on figerai nous mêmes.
    Par exemple, je livre mon client, je positionne un point d'arrêt et ensuite, je peux créer mon script qui va mettre à jour la base client et qui reprend tout ce que j'ai pu faire comme create, alter, etc...

    Merci pour vos réponses, je vais creuser tout cela

  5. #5
    Membre éprouvé
    Profil pro
    Inscrit en
    Octobre 2002
    Messages
    956
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Octobre 2002
    Messages : 956
    Points : 1 199
    Points
    1 199
    Par défaut
    Bonjour,
    Pour une problématique similaire, il y a quelques années nous avons utilisé https://opendbiff.codeplex.com/
    Et cela nous avait convenu. Mais actuellement, dans une autre équipe, nous scriptons toutes nos évolutions de base de données

    Bon weekend
    Soazig

  6. #6
    Modérateur

    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Janvier 2005
    Messages
    5 826
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Janvier 2005
    Messages : 5 826
    Points : 12 371
    Points
    12 371
    Par défaut
    Bonjour,

    Vous pouvez scripter les objets en "gardant" leur création :

    1. Clic-droit sur la base de données, et choisissez Tâches
    2. Choisissez l'option Générer des scripts dans le menu contextuel obtenu
    3. Passez la première page de l'assistant en cliquant sur Suivant, et sélectionnez tous les types d'objets donc vous avez besoin, puis Suivant
    4. La page suivante présente un bouton Avancé : cliquez le
    5. Il y a une option Vérifier l'existence des objets
    6. Choisissez enfin la cible du script, et cliquez sur Suivant
    7. Le tour est joué !


    L'ensemble des instructions DDL est gardé par un test du type
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    IF NOT EXISTS (SELECT * FROM sys.objects WHERE object_id = OBJECT_ID(N'[dbo].[AWBuildVersion]') ...
    BEGIN
    En ce qui concerne l'ajout et le suppression de colonnes, c'est soit manuel, soit en utilisant un outil tiers.

    @++

Discussions similaires

  1. Réponses: 1
    Dernier message: 05/04/2008, 11h28
  2. Comment mettre à jour une base de données access
    Par nicolas2603 dans le forum VB.NET
    Réponses: 11
    Dernier message: 16/10/2007, 14h40
  3. Réponses: 2
    Dernier message: 27/04/2007, 13h45
  4. Réponses: 1
    Dernier message: 15/09/2006, 11h24
  5. [SQL SERVER] Mettre à jour une base de donnée
    Par grellierj dans le forum MS SQL Server
    Réponses: 5
    Dernier message: 24/05/2006, 11h33

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo