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

Langage SQL Discussion :

Création d'une vue associative centralisée


Sujet :

Langage SQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2005
    Messages : 144
    Par défaut Création d'une vue associative centralisée
    Bonjour,

    Je sollicite votre aide afin de m'aider à résoudre un problème: Je rencontre
    un problème pour la création d'une vue sur une base de données SQL.

    Afin de mieux expliquer le problème, j'ai fait des images illustratives, je
    vous invite à télécharger le fichier
    sur:

    http://selvmatt.no-ip.com/public/vue.doc

    Voici le texte sans les images afin de vous donner une idée du problème, si
    vous ne voulez pas télécharger le fichier:

    Mon logiciel permet d'envoyer des emails et de rattacher des fichier de tous
    types à des adresses, des contacts, des projets (de construction ou autre),
    des devis, des offres, etc. Toutes les possibilités sont envisagées. Un
    fichier peut être associé à tout et à rien. Il peut parfaitement être
    associé à un projet, une offre et une adresse, et rien d'autre, tout comme
    il peut être associé à un devis, plusieurs adresses et plusieurs contacts et
    rien d'autre.

    Ces emails et fichiers sont ensuite sauvés et un enregistrement est crée
    dans la base de données dans une table FICHIERS (qui sert entre autre à
    d'autres
    utilisations) et des liens sont crées avec le projet, adresses et contacts
    éventuels.

    Donc à ce stade, le fichier existe en tant qu'entité dans la base de
    données. C'est ce sur quoi je centre mon intérêt à présent, le fichier réel
    n'étant pas important. Selon moi, la structure de la base de données est
    bien modélisée, d'autant que le logiciel tourne depuis pas mal de temps et
    qu'aucun problème n'a été signalé jusqu'à présent. Un table centrale
    FICHIERS, et des tables associatives autour, afin de s'y « brancher »

    Le problème n'est pas dans la structure de la base pour ces fichiers, mais
    plutôt dans la création d'une seule et unique vue, aussi complexe soit-elle,
    sur laquelle travailler afin de retrouver les fichiers par critères.

    Concrètement, il y a une table FICHIERS, une table PROJETS (si un mail
    concerne un projet) une table ADRESSES (qui représente des sociétés), une
    table CONTACTS (qui représente des personnes, qui peuvent être liées à une
    adresse). Pour chacune de ces tables, il y a une table associative avec la
    table FICHIERS afin de faire le lien. Tout ceci fonctionne ainsi :

    Lorsqu'un email est créé, j'insère un enregistrement dans la table FICHIERS.
    S'il concerne un projet (ou plusieurs), j'insère une association avec la
    table PROJETS. Si une adresse de société est dans la liste des destinataires
    (ou plusieurs) j'insère une association avec la table ADRESSES. Si un
    contact est dans la liste des destinataires (ou plusieurs) j'insère une
    association avec la table CONTACTS et une dans la table ADRESSES, si le
    contact fait partie de cette adresse (on considère que le mail a aussi été
    envoyé à la société, pratique pour la recherche, si le contact
    disparaissait).

    Ceci étant fait, je peux faire mes requêtes et retrouver tout ce que je
    cherche sur mon fichier.

    Mon problème est dans le fait que je voudrais faire une vue de TOUS les
    fichiers de la base de données (il peut y en avoir 100 000 !) afin de
    l'afficher
    à l'utilisateur, et que l'utilisateur ait une vue d'ensemble pour chaque
    fichier. TOUTES les informations doivent figurer sur cette vue.

    En fait cette vue sera reprise dans un formulaire et l'utilisateur aura tous
    les fichiers sous les yeux et ensuite il pourra les filtrer par critères.

    A noter que pour l'exemple, je ne parle que des liens entre les projets,
    adresses et contacts, mais qu'en réalité j'ai beaucoup plus de liens que ça,
    avec à chaque fois une table associative.

    Le nombre d'associatives et le nombre de fichiers ne me permettent pas de
    regrouper les données en code, mais m'oblige à le faire en SQL pour des
    raisons de performances.

    Exemple pratique :

    J'envoie un email pour le projet « TestProjet » à deux Adresses et deux
    contacts. :

    Adresse1, Adresse2, Contact1 (Attaché à Adresse 3), Contact2 (Attaché à
    Adresse 4),

    Voilà ce que la vue devrait afficher :

    (IMAGE)

    Si le même fichier avait été aussi rattaché au projet « TestProjet_Bis »,
    voilà ce que la vue devrait afficher :

    (IMAGE)

    Si il y a un autre fichier « Mon Email 2 » rattaché à rien du tout, mais qui
    existe, voilà ce que la vue devrait afficher :

    (IMAGE)

    Et ainsi de suite.

    A noter que dans l'exemple, je décris le fonctionnement des fichiers autour
    de projet, adresses et contacts, mais dans la réalité, les fichier sont
    aussi rattachés (associatives) à d'autres éléments : offre, prospections,
    commandes, articles, sous-projets, catégories, devis etc. Donc la vue est
    bien plus complexe.

    Structure de la base de données des exemples (très réduite et simplifiée) :

    (IMAGE)

    Voilà...

    Je vous remercie de votre aide, je suis vraiement perdu, SQL n'étant pas
    vraiement le domaine dans lequel je suis le plus à l'aise!

  2. #2
    Membre confirmé
    Profil pro
    Inscrit en
    Janvier 2005
    Messages
    144
    Détails du profil
    Informations personnelles :
    Localisation : Suisse

    Informations forums :
    Inscription : Janvier 2005
    Messages : 144
    Par défaut
    Encore moi....

    Pour les personnes n'ayant pas Word, une version du fichier en PDF est disponible sur:

    http://selvmatt.no-ip.com/public/vue.pdf

    Merci!

Discussions similaires

  1. création d'une vue ...help
    Par menoce dans le forum Langage SQL
    Réponses: 3
    Dernier message: 06/07/2005, 21h30
  2. Réponses: 26
    Dernier message: 27/04/2005, 11h29
  3. Création d'une vue
    Par Xris dans le forum Langage SQL
    Réponses: 6
    Dernier message: 29/01/2005, 16h30
  4. Réponses: 7
    Dernier message: 12/07/2004, 22h30
  5. [Plugin] Création d'une vue dynamiquement
    Par The Bonze dans le forum Eclipse Platform
    Réponses: 2
    Dernier message: 15/06/2004, 13h23

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