Précédent   Forum des professionnels en informatique > Bases de données > Décisions SGBD
Décisions SGBD Forum de décisions sur le choix en bases de données. Le Comparatif
Partagez cette discussion sur d'autres réseaux sociaux : Viadeo Twitter Google Facebook Digg Delicious MySpace Yahoo
Réponse Proposer ce sujet en actualité
 
Outils de la discussion
Publicité
'
Vieux 18/08/2005, 14h36   #1
Membre Expert
 
Inscription : mars 2005
Messages : 1 565
Détails du profil
Informations personnelles :
Âge : 29
Localisation : France, Haute Garonne (Midi Pyrénées)

Informations forums :
Inscription : mars 2005
Messages : 1 565
Points : 2 178
Points : 2 178
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 :

Citation:
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
vmolines est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 19/08/2005, 15h59   #2
Rédacteur/Modérateur
 
Avatar de fadace
 
Homme Fabien Celaia
Administrateur de base de données
Inscription : octobre 2002
Messages : 3 779
Détails du profil
Informations personnelles :
Nom : Homme Fabien Celaia
Âge : 41
Localisation : Suisse

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

Informations forums :
Inscription : octobre 2002
Messages : 3 779
Points : 8 124
Points : 8 124
Envoyer un message via ICQ à fadace Envoyer un message via Skype™ à fadace
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.
__________________
Sr DBA Oracle / Sybase / MS-SQL / DB2 / Informix / Postgresql
Administrateur SAP
Mes articles

Attention : pas de réponse technique par MP : pensez aux autres, passez par les forums !
fadace est déconnecté   Envoyer un message privé Réponse avec citation 00
Réponse Proposer ce sujet en actualité
Outils de la discussion



Fuseau horaire GMT +2. Il est actuellement 03h02.


 
 
 
 
Partenaires

Hébergement Web