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

Schéma Discussion :

Historique des création/édition d'objets [MCD]


Sujet :

Schéma

  1. #1
    Futur Membre du Club Avatar de CDuv-Fr
    Profil pro
    Inscrit en
    Février 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 11
    Points : 8
    Points
    8
    Par défaut Historique des création/édition d'objets
    Soit un schéma simple gérant :
    Oeuvre : O_ID, O_TITRE // Les films/livres/documentaires, etc.
    Personne : P_ID, P_NOM, P_PRENOM // Les personnes
    Utilisateur : U_ID, U_LOGIN // Les Utilisateurs du système d'information

    Règles :
    - Une Oeuvre est réalisée par une Personne (association "Réalise")
    - Une Personne peut réaliser plusieurs Oeuvres (association "Réalise")
    - Une Oeuvre peut être commentée par un Utilisateur (association "Commente")
    - Un Utilisateur peut commenter plusieurs Oeuvres (association "Commente")
    (J'ai simplifié un peu)

    Ca me donne le schéma visible en pièce jointe.

    J'aimerai rajouter des informations me permettant de savoir qui a créé chaque ligne de Personne et d'Oeuvre (et à quelle date) ainsi que qui l'a éventuellement modifiée (et quand).

    Basiquement je devrais lier deux fois (une pour la création et une pour la modification) les entités "Personne" et "Oeuvre" à "Utilisateur", ce qui , bien que raisonnable avec seulement deux entités, est quand même un peu lourd.

    Là deux questions se posent à moi :
    • Est-il pertinent de modéliser cela ?
      En effet, je pourrais très bien rajouter les 4 champs manuellement dans chaque table lors de la création sur le SGBDR.
    • La modélisation par méta données, (cf. article « La technique des méta données » par SQLPro) pourrait-elle être la solution de mon problème ?
    Images attachées Images attachées  

  2. #2
    Modérateur

    Avatar de CinePhil
    Homme Profil pro
    Ingénieur d'études en informatique
    Inscrit en
    Août 2006
    Messages
    16 799
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 60
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur d'études en informatique
    Secteur : Enseignement

    Informations forums :
    Inscription : Août 2006
    Messages : 16 799
    Points : 34 031
    Points
    34 031
    Billets dans le blog
    14
    Par défaut
    S'il s'agit de mémoriser l'auteur et la date de la dernière modification, cela ne fait que 2 colonnes de plus que l'auteur et la date de la création. Ce n'est pas catastrophique !
    S'il s'agit par contre de mémoriser les anciennes valeurs (ce qui ne me semble pas utile dans ce cas précis), c'est plus compliqué et il vaut mieux créer une table d'archive.

    Les métadonnées sont des données sur les données. C'est plutôt un système permettant de décrire ce que contient chaque table, colonne. Dans l'application sur laquelle j'ai travaillé à l'INRA, les métadonnées contenaient les informations sur les bases de donées, le stables et les colonnes de ces tables, utilisées par le logiciel afin que celui-ci puisse savoir où les trouver, ainsi que la description des indicateurs qui étaient réalisés à l'aide du logiciel.

    Utiliser une modélisation par métadonnées à la SQLPro pour juste quelques info de création et de modification, cela me semble inutilement lourd.
    Philippe Leménager. Ingénieur d'étude à l'École Nationale Supérieure de Formation de l'Enseignement Agricole. Autoentrepreneur.
    Mon ancien blog sur la conception des BDD, le langage SQL, le PHP... et mon nouveau blog sur les mêmes sujets.
    « Ce que l'on conçoit bien s'énonce clairement, et les mots pour le dire arrivent aisément ». (Nicolas Boileau)
    À la maison comme au bureau, j'utilise la suite Linux Mageïa !

  3. #3
    Futur Membre du Club Avatar de CDuv-Fr
    Profil pro
    Inscrit en
    Février 2009
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Février 2009
    Messages : 11
    Points : 8
    Points
    8
    Par défaut
    Citation Envoyé par CinePhil Voir le message
    S'il s'agit de mémoriser l'auteur et la date de la dernière modification, cela ne fait que 2 colonnes de plus que l'auteur et la date de la création. Ce n'est pas catastrophique !
    C'est vrai qu'au final ça n'est que 4 champs à rajouter. Mais dans le modèle, sous PowerDesigner, ça fait beaucoup de liaison (et donc de traits). Voilà pourquoi je m'interrogeais...

    La méthode des métadonnées a l'avantage de masquer ces liaisons
    Concernant le traitement à faire pour gérer cette méthode : ça n'est pas si complexe et avec un bon framework applicatif c'est transparent.

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

Discussions similaires

  1. [Data] Hibernate Historique des Objets
    Par makroute dans le forum Spring
    Réponses: 0
    Dernier message: 06/06/2012, 09h38
  2. historique des objets
    Par haykelFST dans le forum Développement
    Réponses: 1
    Dernier message: 03/12/2008, 16h51
  3. [Reflexivite]création dynamique d'objet et Héritage
    Par norkius dans le forum API standards et tierces
    Réponses: 5
    Dernier message: 26/10/2004, 11h37
  4. Création d'un objet d'un form a l'autre
    Par Argonz dans le forum C++Builder
    Réponses: 12
    Dernier message: 03/03/2004, 10h23
  5. [LG]Vision des champs d'un objet
    Par YéTeeh dans le forum Langage
    Réponses: 3
    Dernier message: 06/11/2003, 21h20

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