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

MS SQL Server Discussion :

Création et maintenance de plusieurs vues


Sujet :

MS SQL Server

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé Avatar de bbo1991
    Profil pro
    oidfsdfsd
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : oidfsdfsd

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut Création et maintenance de plusieurs vues
    Hello,

    J'ai besoin de créer et de maintenir une multitude de vues. La définition de ces dernières dépendra d'une table de correspondance.

    Exemple :
    - la vue V_DEPTA sera créée avec un filtre WHERE DEPT='7'
    - la vue V_DEPTB sera créée avec un filtre WHERE DEPT='9'
    - la vue V_DEPTC sera créée avec un filtre WHERE DEPT in ('2' ,'5')
    etc..

    La table de correspondance contient les correspondances du type:
    Bloc- Dept
    A - 7
    B - 9
    C - 2
    C - 5

    Mes vues doivent donc être créées et maintenus en fonction de cette table de correspondance, cette dernière étant assez conséquente j'envisage mal de créer mes views à la main.

    Est-ce qu'on peut les créer via une T-SQL simple ?

  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,

    Quand vous dites "maintenue", vous voulez qu'a chaque ajout/modification dans votre table, les vues soient automatiquement créées/modifiées ?

    Vous pourriez générer dynamiquement vos ordre de creation de vue, puis les exécuter, mais la démarche me parait très étrange, et les performances seront catastrophiques !

    1/ Pourquoi voulez vous faire cela ?
    2/ Que comptez vous faire de ces vues ?
    3/ comptez vous les indexer ?

  3. #3
    Membre confirmé Avatar de bbo1991
    Profil pro
    oidfsdfsd
    Inscrit en
    Novembre 2006
    Messages
    100
    Détails du profil
    Informations personnelles :
    Âge : 40
    Localisation : France

    Informations professionnelles :
    Activité : oidfsdfsd

    Informations forums :
    Inscription : Novembre 2006
    Messages : 100
    Par défaut
    Oui maintenir pour moi c'est du type si je rajoute une entrée :
    Bloc-Dept
    X- 5

    alors une nouvelle vue V_DEPTX sera créée avec le filtre sur Dept = 5.
    Pareil pour les modifications et suppressions dans la table de correspondance.

    Mais pas de panique la fréquences de mise à jour de cette table est très très faible. Donc la procédure de création et de mmise à jour des vues se fera de manière exceptionnelle.

    Pour le pourquoi : il s'agit de restreindre les lignes retournées par une table en fonction du contexte de la requête. Il y a une couche supérieure qui choisit la vue optimale à utiliser en fonction de la situation.

    Je cherche donc moyen de créer rapidement ces vues par procédure stockée, sinon un petit programme maison le fera aussi bien mais je préfère la solution full SQL Server si possible.

  4. #4
    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
    Citation Envoyé par bbo1991 Voir le message
    Pour le pourquoi : il s'agit de restreindre les lignes retournées par une table en fonction du contexte de la requête.
    La clause WHERE fait cela très bien !


    Il y a une couche supérieure qui choisit la vue optimale à utiliser en fonction de la situation.
    SQL server a cela aussi.
    pour chaque requete, il commence par chercher la façon la plus rapide de répondre. Et je mettrai ma main a couper que ca sera plus optimisé que votre surcouche aussi bien pensée et développée soit-elle.


    Pour votre requete, faites simplement une jointure sur votre table de correspondance !

Discussions similaires

  1. Plusieurs vues sur un même fichier
    Par minicat dans le forum Eclipse Java
    Réponses: 4
    Dernier message: 05/05/2014, 21h53
  2. [MFC] Plusieurs vues sur le même CTreeCtrl
    Par Denn's dans le forum MFC
    Réponses: 4
    Dernier message: 17/04/2006, 19h12
  3. [MFC]Application avec plusieurs vues
    Par tus01 dans le forum MFC
    Réponses: 2
    Dernier message: 22/02/2006, 16h17
  4. [MFC]Impression de plusieurs vues
    Par valdeub dans le forum MFC
    Réponses: 3
    Dernier message: 19/01/2006, 09h30
  5. Plusieurs vues pour le même objet
    Par nicolas66 dans le forum OpenGL
    Réponses: 4
    Dernier message: 25/10/2004, 10h27

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