Précédent   Forum des professionnels en informatique > Bases de données > Langage SQL
Langage SQL Forum d'entraide sur le langage SQL et sur les questions liées à la conception de schéma (DDL). Cours SQL
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 09/12/2011, 13h10   #1
Invité de passage
 
Femme
Inscription : mars 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Femme

Informations forums :
Inscription : mars 2011
Messages : 7
Points : 0
Points : 0
Par défaut Problème sur les cardinalités !

Bonjour,
J'ai un problème pour implanter le schéma objet correspondant à ce modèle, je ne sais pas comment présenter la cardinalité 0..3 en sql.
Sans titre.png

Voilà ce que j'ai fait :
Code :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
 
CREATE type chef_t AS object (
nas int ,
anServ int);
 
CREATE type leschef_t AS TABLE of ref chef_t;
 
CREATE type SiteChantier_t AS object (
noSC int,
villeSC varchar (50),
refChefDirige leschef_t ,
refChefSuper leschef_t )
 
CREATE type lesSiteChantiers_t AS TABLE of ref SiteChantier_t ;
S.V.P., j'ai besoin d'aide.
Merci
routa27 est déconnecté   Envoyer un message privé Réponse avec citation 00
Vieux 09/12/2011, 13h23   #2
Modérateur
 
Avatar de CinePhil
 
Homme Philippe Leménager
Ingénieur d'études en informatique
Inscription : août 2006
Messages : 11 029
Détails du profil
Informations personnelles :
Nom : Homme Philippe Leménager
Âge : 48
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 : 11 029
Points : 18 331
Points : 18 331
Envoyer un message via MSN à CinePhil
Il est bizarre ton SQL !

S'il s'agit de créer des tables dans la BDD à partir du diagramme de classe donné, tu as :
- une table Chef (nas, anServ) ;
- une table SiteChantier (noSC, VilleSC, refChefDirige) ;
- et en toute rigueur, vu qu'un chantier peut ne pas être supervisé, une table associative Supervision_chantier (refNoSC, refChefSuperviseur)

Voir mon blog pour plus d'explication sur la table associative (cas 03).

Ensuite, pour limiter à 3 le nombre de superviseur, il faudra programmer un trigger qui vérifiera avant insertion qu'il n'y a pas déjà 3 superviseurs pour le chantier considéré.
__________________
Philippe Leménager. Ingénieur d'étude à l'École Nationale de Formation Agronomique.
Mon blog sur la conception des BDD, le langage SQL, le PHP avec Zend Framework...
« 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 Mandriva Linux ou Mageïa ! Soutenons l'industrie logicielle française !
Linuxiens, comptez-vous !
CinePhil est déconnecté   Envoyer un message privé Réponse avec citation 10
Vieux 09/12/2011, 14h25   #3
Invité de passage
 
Femme
Inscription : mars 2011
Messages : 7
Détails du profil
Informations personnelles :
Sexe : Femme

Informations forums :
Inscription : mars 2011
Messages : 7
Points : 0
Points : 0
Merci pour votre réponse.
Mais dans ce modèle, je veux qu'un chef puisse superviser jusqu'à 3 chantiers, il peut aussi diriger un chantier et dans ce cas, il le supervise obligatoirement.
Voila le modèle navigationnel correspondant:
Sans titre2.png

Mais je me demande si je peux utiliser Varray[3] par exemple.
routa27 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 22h14.


 
 
 
 
Partenaires

Hébergement Web