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 :

[2012/2016] Désynchroniser les livraisons Web / SQL


Sujet :

Développement SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 19
    Par défaut [2012/2016] Désynchroniser les livraisons Web / SQL
    Bonjour,

    J'aurai besoin de vos conseils : je souhaite désynchroniser mes livraisons de mon site Web avec mes livraisons SQL (Procédure, script de l'architecture, trigger).
    Soit la version A de mon site Web et de mon paquet SQL livrée sur mes serveurs de production
    Soit la version B de mon site Web et de mon paquet SQL que je dois livrer

    D'habitude je livre mon site Web et mon paquet SQL en même temps dans la soirée ce qui permet que le lendemain matin la version B soit OK.
    Aujourd'hui je souhaite désynchroniser la livraison de mon paquet SQL avec celle de mon site Web :
    - N : Web en version A + SQL en version A
    - N+1 : Web en version A + SQL en version B
    - N+2 : Web en version B + SQL en version B

    Je me suis dit qu'il fallait que je fasse transiter un numéro de version en mon site Web et mon SQL afin d'appeler la procédures SQL correspondant à la bonne version de mon site Web.
    J'aurai une procédure comme point d'entrée qui s'occuperait de faire le routage sur la bonne procédure en fonction de la version du site Web.

    Cette solution n'est pas forcement géniale mais au vu de mes connaissances et de mes recherches sur le Net, je n'en voit pas d'autre.
    Savez vous si des fonctionnalités MS SQL peuvent gérer ce cas ou si vous avez déjà travaillé sur ce sujet ?

    Merci d'avance.

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    ça va vite devenir une usine à gaz...

    Pour quelle raison ne voulez vous pas tout livrer en même temps ?

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 19
    Par défaut
    Tout d'abord toutes nos livraison sont réalisées en automatique la nuit et sont uniquement surveillés par une équipe dédié à ça.

    Nos paquets SQL sont englobés dans une transac générale : cas de problème on effectue d'erreur un rollback est fait.
    Du coup si l'installation du site Web est lancé dernière... Ca risque de planter.
    - Site Web en version B et SQL e version A = KO

    De ce fait on nous conseille de livrer notre paquet SQL une semaine avant le Web (nous livrons 1 fois par semaine à part les correctifs urgents).
    Une des solution serait de gérer le numéro de version dans le nom de la procédure stockée et de laisser le Web piloter l'appel.

    Effectivement il faudra faire du ménage une fois la livraison effectuée.

    Avez vous d'autre idée ?
    Merci

  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
    22 010
    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 : 22 010
    Billets dans le blog
    6
    Par défaut
    Il est possible de jouer sur une particularité peu connues de SQL Server. La gestion des versions des procédures. En effet, lors de sa création, une procédure est créée avec un numéro de version.

    Exemple :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    CREATE PROCEDURE P0;1
    AS
    SELECT 1 AS P0_VERSION1
    GO
     
    EXEC P0;
    GO
     
     
    CREATE PROCEDURE P0;2
    AS
    SELECT 2 AS P0_VERSION2
    GO
     
    EXEC P0
    GO
     
    EXEC P0;2
    GO
    Je ne sais pas si cela peut vous aider…. Et en plus c'est considéré comme deprecated, mais pas encore obsolète…

    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 averti
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 19
    Par défaut
    Ok merci.
    Je vais regarder ce point sur le numéro de version même si c'est déprécié.
    Est ce que vous auriez de la documentation la dessus car je ne trouve rien sur ce sujet ?

    Merci d'avance.

  6. #6
    Membre averti
    Profil pro
    Inscrit en
    Janvier 2012
    Messages
    19
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Janvier 2012
    Messages : 19
    Par défaut
    Effectivement dans la Doc MS SQL j'ai trouvé ça

    ; number
    S’applique à : SQL Server 2008 à SQL Server 2017 et Azure SQL Database.

    Entier facultatif utilisé pour regrouper des procédures de même nom. Ces procédures groupées peuvent être supprimées en même temps par le biais d'une seule instruction DROP PROCEDURE.

    Note

    Cette fonctionnalité est en mode de maintenance et risque d’être supprimée dans une prochaine version de Microsoft SQL Server. Évitez d'utiliser cette fonctionnalité dans de nouveaux travaux de développement, et prévoyez de modifier les applications qui utilisent actuellement cette fonctionnalité.

    Les procédures numérotées ne peuvent pas utiliser les types xml ou CLR définis par l’utilisateur, et ne peuvent pas être utilisées dans un repère de plan.
    Dommage qu'il ne précise pas comment reconduire le comportement...

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Quels pourraient être les meilleurs SGBD SQL en 2016 ?
    Par Community Management dans le forum Décisions SGBD
    Réponses: 102
    Dernier message: 13/06/2018, 16h42
  2. Réponses: 11
    Dernier message: 16/01/2017, 10h47
  3. Réponses: 0
    Dernier message: 05/07/2010, 12h15
  4. Livre : XML et les services Web
    Par cyberzoide dans le forum XML/XSL et SOAP
    Réponses: 1
    Dernier message: 27/05/2007, 17h12

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