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écisions SGBD Discussion :

Générer un identifiant relatif > l'entité faible en prati


Sujet :

Décisions SGBD

  1. #1
    Membre émérite

    Profil pro
    Inscrit en
    Mars 2005
    Messages
    1 683
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations forums :
    Inscription : Mars 2005
    Messages : 1 683
    Points : 2 579
    Points
    2 579
    Par défaut Générer un identifiant relatif > l'entité faible en prati
    Bonjour,

    ayant souvent besoin de modéliser des entités faibles. Je me demandais comment valoriser mon identifiant relatif. Exemple de modèle pour illustrer :

    TBL_PERSONNE : ID_PERSONNE
    TBL_QUESTIONNAIRE : ID_QUESTONNAIRE
    TBL_PARTICIPATION : NUM_PARTICIPATION, #ID_PERSONNE, #ID_QUESTONNAIRE
    On a des personnes et des questionnaires et une personne peut participer plusieurs fois au même questionnaire. L'identifiant relatif représentant cette entité faible est NUM_PARTICIPATION.

    Or l'idéal est que ce NUM_PARTICIPATION ne soit pas unique mais que le 3uplet [NUM_PARTICIPATION, #ID_PERSONNE, #ID_QUESTONNAIRE] soit unique.

    Les SGBD gèrent ils la génération d'identifiant relatif auto incrémentés ou se limitent ils à un auto incrément qui ne tient pas compte des autres éléments de la clé composée ?

    Si ça existe, quels SGBD gèrent ça ? Et comment baptise-t-on cette notion dans les SGBD ?

    Si ça n'existe pas, doit-on alors forcément utiliseru ne procédure de création de clé qui gère cette notion ? je pense notament à m'inspirer du superbe article de Fred brouard Calcul d"une clef auto-incrémentée

    Voilà j'ai une petite idée de réponses aux problèmes que je soulève mais je voudrais avoir d'autres avis et queça puisse servir à d'autres.

    Merci

  2. #2
    Rédacteur/Modérateur

    Avatar de Fabien Celaia
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Octobre 2002
    Messages
    4 224
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 54
    Localisation : Suisse

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Service public

    Informations forums :
    Inscription : Octobre 2002
    Messages : 4 224
    Points : 19 566
    Points
    19 566
    Billets dans le blog
    25
    Par défaut
    En ce qui concerne la clé primaire, le SGBDR créera une contrainte d'unicité sur les 3 champs via un index sur des champs non nullabes.

    Une SP ou un trigger me semble être la meilleure façon de gérer ce genre de comportement.

    A ma connaissance, on ne s'en sortira pas avec une notion de séquence.

Discussions similaires

  1. [MCD] Définition 'lien identifiant' & 'identifiant relatif'
    Par knoxville dans le forum Schéma
    Réponses: 14
    Dernier message: 19/03/2011, 02h27
  2. identifiant relatif en sql
    Par jiojioforever dans le forum Langage SQL
    Réponses: 7
    Dernier message: 09/02/2007, 16h11
  3. [Identifiant relatif] access
    Par Fredo02 dans le forum Access
    Réponses: 1
    Dernier message: 19/01/2006, 22h14
  4. entité faible en sql
    Par MeKesTudi dans le forum Langage SQL
    Réponses: 3
    Dernier message: 07/12/2005, 18h23
  5. ENTITE FAIBLE
    Par Whismeril dans le forum Langage SQL
    Réponses: 2
    Dernier message: 20/01/2005, 23h53

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