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

Développement SQL Server Discussion :

Script générique de màj de structure de BDD à partir d'une source et d'une destination


Sujet :

Développement SQL Server

  1. #1
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2008
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mars 2008
    Messages : 464
    Points : 268
    Points
    268
    Par défaut Script générique de màj de structure de BDD à partir d'une source et d'une destination
    Bonjour,
    Je voudrais écrire un script de génération d'objet SQL dans SSIS à partir en paramètre d'une BDD source et une autre BDD de destination
    Je sais qu'il existe un composant du même nom mais il ne me convient pas : en effet lors de la regénération je ne voudrais pas vider les tables (faire un DROP en fait).
    Mon idée est la suivante :
    Si table existe dans source mais pas dans destination je fais un CREATE TABLE
    Si table existe dans destination mais pas dans source je fais un DROP TABLE
    Si table existe dans source et dans destination et qu'il y a un changement je fais un ALTER TABLE
    Si table existe dans source et dans destination et pas de changement je ne fais rien.

    Du coup j'avais pensé le faire en script via INFORMATION_SCHEMA mais j'ai peur d'oublier des trucs :
    Je veux dire je ne pense pas que j'oublierai des trucs sur les tables et vue concernant les colonnes, indexes, contraintes, clé primaire, clé étrangère et typage mais une table est constitué d'une multitude de choses et je ne suis pas sur de faire le tour.
    Comme SSIS permet de le faire et comme avec SSMS on peut le faire également je me suis dit que l'exercice est connu et qu'il doit y avoir des trucs tout fait.

    Merci pour vos suggestions.

  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 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    Oui, via information schema vous aller oublier pas mal de choses : index, colonnes calculées, auto-incréments, types utilisateur....

    Le mieux est de créer plus simplement une réplication de schéma.

    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 actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2008
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mars 2008
    Messages : 464
    Points : 268
    Points
    268
    Par défaut
    Si je fais une réplication de schéma, outre le fait que je ne suis pas sur de rendre ça générique qq soit la BDD de source et de destination je vais me confronter à un problème :
    De deux choses l'une si les objets de mon schéma existent dans la BDD de destination :
    - Soit je fais une réplication sans dropper : auquel cas je vais avoir une erreur
    - Soit je droppe les tables et donc je les vides : ce qu'initialement je ne voulais pas.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    SQL Server intègre différent mécanismes de réplication, y compris une réplication de schéma.

    http://msdn.microsoft.com/en-us/library/ms152562.aspx

    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/ * * * * *

  5. #5
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2008
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mars 2008
    Messages : 464
    Points : 268
    Points
    268
    Par défaut
    Petite question : La réplication de schéma inclue t'elle un transfert des données de la BDD source vers destination car si c'est le cas ça ne me va pas du tout.

  6. #6
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    21 772
    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 772
    Points : 52 732
    Points
    52 732
    Billets dans le blog
    5
    Par défaut
    pas forcément. C'est vous qui choisissez ce que vous voulez faire.

    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/ * * * * *

  7. #7
    Membre actif
    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Mars 2008
    Messages
    464
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 40
    Localisation : France, Meurthe et Moselle (Lorraine)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : Bâtiment Travaux Publics

    Informations forums :
    Inscription : Mars 2008
    Messages : 464
    Points : 268
    Points
    268
    Par défaut
    Pardon je suis désolé de le demander encore mais est il vraiment possible de générer en automatique les ALTER TABLE en fonction de la différence entre les deux bases de données ?
    Si c'est le cas ça me parait quand même un peu de la magie.

  8. #8
    Invité
    Invité(e)
    Par défaut
    Citation Envoyé par VITALTH Voir le message
    Si c'est le cas ça me parait quand même un peu de la magie.
    Personnellement, Gandalf est mon ami et il m'est très souvent utile.
    Bon, je t'avoue un secret, Gandalf est un nom d'emprunt car couramment, on l'appelle Red Gate SQL Compare. Mais ça reste quelque chose de secret, il faut éviter d'invoquer le Ctuluh, tout ça...

Discussions similaires

  1. Réponses: 0
    Dernier message: 24/09/2013, 14h30
  2. [RegEx] Conseil structure pour bdd dictionnaire
    Par loopback dans le forum Langage
    Réponses: 1
    Dernier message: 27/12/2007, 19h50
  3. Mise à jour de la structure de bdd client
    Par BerSerK dans le forum Outils
    Réponses: 2
    Dernier message: 23/11/2007, 14h09
  4. Conseil de structuration de BDD
    Par LuckyKant dans le forum SQL Procédural
    Réponses: 2
    Dernier message: 15/07/2007, 11h15
  5. [Conception]structure de BDD pour gérer une arborescence
    Par petitours dans le forum Modélisation
    Réponses: 11
    Dernier message: 13/04/2007, 16h58

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