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 :

Planning de réservation de salles [MCD]


Sujet :

Schéma

  1. #1
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 27
    Points : 38
    Points
    38
    Par défaut Planning de réservation de salles
    Je viens à vous pour une vérification.Ayant établie un MCD avec mon groupe je souhaiterais avoir vos critiques qui je suis sur ne sera que positive

    Sujet : " Objectif du projet :

    Afficher un planning de réservation des salles pour des enseignants, des groupes d’étudiante et des cours.
    Un cours doit être assigné à un ou plusieurs groupes d’étudiants et doit contenir dans sa définition le nombre d’heures totales à placer tout au long de l’année.
    Un message doit avertir l’utilisateur du dépassement de ce quota mais ne doit pas empêcher une réservation supplémentaire.
    On doit toujours pouvoir être informé du nombre d’heure déjà placées et du nombre d’heure à placer restant.
    On doit vérifier si la salle désirée peut contenir le/les groupes d’étudiants souhaités en terme de capacité.
    Concernant les enseignants et groupes d’étudiants, on doit pouvoir les gérer et leur ajouter des notes d’observation.
    Concernant les réservations, elles seront gérer en fonction des salles, on doit pouvoir paramétrer si on affiche les plages horaires par quarts d’heure, demi-heures, ou heures pleines et si l’horaire de fin est 18H, 19H ou 20H. Ces paramètres seront appliqués à toutes les semaines et seront modifiables.
    Il faudra gérer les vacances et jours fériés, mettre des vacances prédéfinies pour ne pas que l’utilisateur ait à les configurer a chaque fois mais lui permettre de les modifier. Les réservations sont impossibles pendant les vacances mais possible pendant les jours fériés après confirmation via un « message d’erreur ».
    On doit donner la possibilité à l’utilisateur de faire des réservations redondantes, c'est-à-dire de placer la même réservation sur plusieurs semaines en un coup et cela doit gérer automatiquement les périodes de vacance si besoin (sauter ces périodes et continuer les semaines d’après).
    Une fonction de purge permettant d’effacer partiellement ou totalement les réservations devra être faite.
    Contraintes à gérer :
    - Empêcher les réservations aux dates antérieures à la date actuelle.
    - Un enseignant/groupe d’étudiants/cours ne peut pas être sur 2 réservations au même moment.
    - Une salle ne peut pas être réservée 2 fois au même moment.
    - Vérification des horaires de réservation.
    On ne veut rien savoir d'autre du prof que son nom et prénom, il doit être lié a des cours et donc toute réservation doit comprendre un cours, un/des groupe(s) d'étudiants et un prof.
    On s'occupe que de notre zone pour les vacances et jours fériés, on doit pouvoir gerer plusieurs batiments. "


    Je vous remercie d'avance de toute l'attention que vous pourrez nous apporter ...
    Images attachées Images attachées  

  2. #2
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 27
    Points : 38
    Points
    38
    Par défaut
    Petite question :
    - Devons nous faire une plutot une ternaire entre cours / enseignants / groupes d'étudiants et relier le cours à une réservation
    - Ou plutôt laisser une quaternaire comme nous l'avons fait plus haut ?

  3. #3
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7 945
    Points : 30 716
    Points
    30 716
    Billets dans le blog
    16
    Par défaut Association quaternaire
    Bonsoir kaalii,


    La quaternaire est une fausse quaternaire : en effet, la patte d’association connectant RESERVATION et CONCERNE est porteuse d’une cardinalité maximale 1 : théoriquement CONCERNE doit être décomposée en 3 associations :
    [RESERVATION]----1,1----( )----0,N----[ENSEIGNANT]

    [RESERVATION]----1,1----( )----1,N----[COURS]

    [RESERVATION]----1,1----( )----1,N----[GROUPE]
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  4. #4
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 27
    Points : 38
    Points
    38
    Par défaut Re réponse
    Je re-poste mais comme vous le savez si la modélisation n'est pas bonne dès le départ tout le projet peut partir à la poubelle et ça serait dommage de mal démarrer.

    Donc je vous joint notre nouveau MCD avec les commentaires que nous avons déjà pu avoir ..

    Je vous remercie d'avance de ma part et de celle de mon équipe et attendons avec impatiente vos avis et critiques constructives
    Images attachées Images attachées  

  5. #5
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7 945
    Points : 30 716
    Points
    30 716
    Billets dans le blog
    16
    Par défaut
    Bonsoir kaalii,


    Votre MCD n’a pas changé par rapport à la 1re fois, à ceci près qu’il faut une loupe cette fois-ci pour le lire...

    J’attends donc la nouvelle mouture.

    Une question : vous a-t-on enseigné des éléments de théorie relationnelle ? (dépendances fonctionnelles, axiomes d’Armstrong, clés candidates, troisième forme normale et tout le toutim...) Si tel n’est pas le cas, vous parviendrez lors du passage du MCD au MLD à bâtir une structure correcte, mais pas plus solide que la maison de Nif-Nif et Nouf-Nouf.




    Si oui, vous pourrez bâtir une maison robuste, dans le genre de celle de Naf-Naf.

    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  6. #6
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7 945
    Points : 30 716
    Points
    30 716
    Billets dans le blog
    16
    Par défaut Surbooking et bilocation...
    Bonsoir kaalii,

    Hum... Pas inspiré ? Allez, je poursuis.

    Je m’intéresse ici à l’association quaternaire. Pour le reste, j’ai lu rapidement l’énoncé, il y a des choses à dire, mais bon. Disons que votre entité-type VACANCES devrait comporter un booléen pour préciser si une occurrence correspond à une période de vacances ou bien à un jour férié. En effet, les réservations ne dont pas possibles pendant les vacances mais le sont lors des jours fériés. En outre, la patte connectant VACANCES et VERIFIE devrait être porteuse d’une cardinalité maximale N plutôt que 1.

    Je ferai remarquer que selon votre MCD, les réservations posent un problème. Tout d’abord, pour fixer les idées, j’appelle période de réservation le triplet {date de réservation, heure de début, heure de fin} et je symbolise une telle période par H. De même, je symbolise RESERVATION par R, COURS par C, GROUPE par G, ENSEIGNANT par P et SALLE par S.

    Pour formuler autrement ce que j’ai écrit dans mon précédent message, on peut écrire (DF est l’abréviation de dépendance fonctionnelle) :
    DF01 : R -> C
    DF02 : R -> P
    DF03 : R -> S
    Où « R -> C » se lit : Pour une valeur de R il y a exactement une valeur de C (c'est-à-dire une et une seule valeur de C). Cette contrainte est ce qu’on appelle une dépendance fonctionnelle. En l’occurrence, pour une réservation donnée on a exactement un cours (et pas deux !), et pour cette réservation on a encore exactement un enseignant et une salle. Il n’y a pas de dépendance fonctionnelle R -> G car selon l’énoncé, une réservation peut concerner plus d’un groupe.

    Normalement, une dépendance fonctionnelle (DF) met en jeu les attributs composant l’en tête d’une variable relationnelle (au sens de la théorie relationnelle, rien à voir avec Merise, toutefois une table SQL ressemble à une telle variable), mais ici on s’en servira aussi pour tricoter les noms des entités-types, H, R, C, G, P, S.

    En passant, pour reprendre les attributs composant l’en-tête de RESERVATION, à savoir Cle, Date du jour (qu’il faudrait que vous renommiez en Jour, car la date du jour change ... tous les jours), Heure début, Heure Fin, comme Cle est identifiant, on infère :

    Cle -> Jour, Heure début, Heure fin, ce qui revient à :
    DF04 : R -> H
    Maintenant, comme évoqué dans votre énoncé, se posent les problèmes de surbooking :

    Pour une période (H) et une salle (S) données, il ne peut y avoir qu’une seule réservation (R) :
    DF05 : H,S -> R
    On démontre (cf. les axiomes d’Armstrong) que par transitivité :
    DF06 : H,S -> C
    DF07 : H,S -> P
    Il y a aussi les problèmes de bilocation et apparentés liés au temps :
    DF08 : H,P -> S
    DF09 : H,G -> S
    DF10 : H,G -> P
    Et il y a d’autres DF qui sont inférées des axiomes d’Armstrong (mais je sens que je vous traumatise...) :
    DF11 : H,P -> C
    DF12 : H,G -> C
    Etc.

    Manifestement, avec votre MCD on ne vérifie que les dépendances fonctionnelles DF01, DF02, DF03, DF04 et c’est tout...

    Comme DF05 n’est pas modélisée dans votre MCD, pendant une période donnée une salle peut faire l’objet de plusieurs réservations ; comme les DF : DF06 et suivantes ne sont pas non plus représentées, on peut avoir de la bilocation à tout va...

    Si vous conservez votre MCD, il faudra préciser que les contraintes exprimées ici par les DF seront mises en œuvre au niveau SQL à coups de triggers et autres « facilités ».

    Je vous laisse méditer le MCD ci-dessous (que je n’ai pas vérifié attentivement, mais vous le ferez...) dans lequel les associations sont binaires (RH, RS, RC, RP) ou ternaires (HSR, HPS, HGS, HGP).

    Dans le cas des ternaires, les dépendances fonctionnelles sont représentées par des CIF merisiennes (CIF est l’abréviation de contrainte d’intégrité fonctionnelle), symbolisées par des flèches rouges surchargeant des pattes. Par exemple, la patte connectant R et HSR est surchargée par une flèche rouge qui par convention signifie que pour une valeur de la paire {H, S} il y a exactement une valeur de R (cf. DF05).



    J’espère que ce n’est pas trop la panique à bord...
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

  7. #7
    Nouveau membre du Club
    Homme Profil pro
    Étudiant
    Inscrit en
    Mai 2012
    Messages
    27
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haut Rhin (Alsace)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mai 2012
    Messages : 27
    Points : 38
    Points
    38
    Par défaut
    Bonjour fsmrel,

    J'ai joins 2 mcd différents. Le premier n'a pas changé, nous avons juste rajouté le booléen qui vérifie si c'est un jour férié ou si c'est un jour compris dans des vacances. Nous pensons pouvoir couvrir les dépendances fonctionnelles avec les fonctionnalités du logiciel Access.

    Par contre pour le second mcd, j'ai essayé de traduire ce que vous avez écrit dans le message précédent sans être sur du travail que j'ai effectué. Car en voyant le MCD, je ne suis vraiment pas convaincu d'avoir compris l'image que vous avez joint dans le message précédent et tout ce que vous avez essayé de me faire comprendre.

    Merci encore pour vos conseils et le temps que vous nous accordez.
    Images attachées Images attachées   

  8. #8
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    7 945
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Essonne (Île de France)

    Informations professionnelles :
    Activité : Spécialiste en bases de données
    Secteur : Conseil

    Informations forums :
    Inscription : Septembre 2006
    Messages : 7 945
    Points : 30 716
    Points
    30 716
    Billets dans le blog
    16
    Par défaut Exercice pas trivial (trapèze volant sans filet)...
    Bonsoir kaalii,


    Citation Envoyé par kaalii Voir le message
    J'ai essayé de traduire ce que vous avez écrit dans le message précédent sans être sur du travail que j'ai effectué.
    Pour y voir plus clair, je surcharge les noms de vos associations par ceux que j’ai utilisés dans le MCD que j’avais présenté. Manifestement votre traduction est fidèle, sauf que les CIF sont absentes, c'est-à-dire que certaines dépendances fonctionnelles non inférables ne sont pas représentées. Mais la mise en œuvre des CIF n’étant pas prévue par l’outil AnalyseSI, il vous reste seulement vos yeux pour pleurer (vous pouvez tout du moins surcharger la représentation graphique et dessiner des flèches avec un outil comme PAINT).

    MCD surchargé des noms d’associations :




    La bonne nouvelle est qu’en fait on peut faire l’économie de certaines CIF, à condition de tenir compte du fait que certaines dépendances fonctionnelles sont inférables (application des axiomes d’Armstrong).

    Je reprends leur liste, complétée avec DF13 et en coloriant en bleu celles qui ne sont pas inférables des autres (a ceci près que des DF non inférables peuvent l’être, mais à condition que d’autres qui sont inférables ne le soient plus, toutefois on n’insistera pas sur ce point qui dans votre contexte n’est pas primordial...) :

    DF01 : R -> C

    DF02 : R -> P

    DF03 : R -> S

    DF04 : R -> H

    DF05 : H,S -> R

    DF06 : H,S -> C

    DF07 : H,S -> P

    DF08 : H,P -> S

    DF09 : H,G -> S

    DF10 : H,G -> P

    DF11 : H,P -> C

    DF12 : H,G -> C

    DF13 : H,P -> R

    Comme DF10 est inférable, l’association HGP (Association 23 dans votre MCD) peut disparaître. Par ailleurs, étant donné qu’au niveau MLD (puis SQL) on aura une table R porteuse des attributs R, S, P, H,C, celle-ci pourra être porteuse de DF08, c'est-à-dire qu’on peut faire l’économie de l’association HPS ; de la même façon la table R pourra être porteuse de DF05, on pourra donc faire l’économie de l’association HSR. Reste donc une seule CIF, portée par l’association HGS (Association 24).

    Si l’on retouche votre MCD, on arrive à ceci (j’ai renommé les attributs identifiants) :




    Par raffinements successifs, on arrive à un MCD sans CIF, à condition de disposer du mécanisme de l’identification relative, mais la mauvaise nouvelle est qu’AnalyseSI ne connaît pas ce type d’identification, et il faut donc en passer par PowerAMC ou WinDesign (payants tous les deux) ou Open ModelSphere (gratuit). Néanmoins ces AGL ne permettent pas de rendre compte exactement de la situation à cause de l’attribut H.


    Exemple, MCD avec PowerAMC :




    Par identification relative on entend que l’identifiant de l’entité-type R est composé de l’association R_S et d’un l’attribut de R (H en l’occurrence). Cela veut dire qu’au niveau du MLD, la clé primaire de la table R sera la paire {S, H} où S est l’attribut provenant de la table S. En procédant ainsi, on peut établir l’association HGS_R connectant les entités-types R et HGS.

    De la même façon, l’identifiant de l’entité-type HGS est composé de l’association HGS_G et d’un l’attribut de R (H en l’occurrence). Seul problème : au niveau MLD, la table HGS comportera deux fois l’attribut H qui est donc redondant, et il faudra procéder à un nettoyage manuel en supprimant l’un des deux dans la table HGS du MLD.


    Ce MLD nettoyé est le suivant :




    Où R a pour clé primaire {S, H} et pour clés alternatives {R} et {P, H} respectivement symbolisées par les mickeys <ak1> et <ak2>. HGS a pour clé primaire {G, H}.

    Les dépendances fonctionnelles non inférables sont-elles ainsi préservées ?

    Au sein de la table R, {R} est clé alternative, c'est-à-dire clé candidate, en vertu de quoi on vérifie :
    {R} -> {S}

    {R} -> {P}

    {R} -> {H}

    {R} -> {C}

    On retrouve DF01, DF02, DF03, DF04.

    Au sein de la table R, {S, H} est clé primaire, c'est-à-dire clé candidate, en vertu de quoi on vérifie :

    {S, H} -> {R}

    {S, H} -> {P}

    {S, H} -> {C}
    On retrouve , DF05, DF06, DF07.

    Au sein de la table R, {P, H} est clé alternative, c'est-à-dire clé candidate, en vertu de quoi on vérifie :
    {P, H} -> {R}

    {P, H} -> {S}

    {P, H} -> {C}

    On retrouve DF08, DF11, DF13.

    Au sein de la table HGS, {G, H} est clé primaire, c'est-à-dire clé candidate, en vertu de quoi on vérifie :

    {G, H} -> {S}
    On retrouve DF09.

    Les DF non inférables DF01, DF02, DF03, DF04, DF05, DF06, DF07, DF08 et DF09 sont préservées, en conséquence de quoi les règles de gestion qui en sont à la source sont garanties elles aussi.


    Reste à mettre en œuvre une base de données de test pour vérifier tout cela. Le script SQL de création de cette base de données est généré par l’AGL à partir du MLD et dans le cas de PowerAMC il est le suivant (dans le style du SGBD MS SQL Server) :

    TABLE S
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE S (
         S          INT                 NOT NULL,
         Snom       VARCHAR(64)         NOT NULL,
         CONSTRAINT S_ID PRIMARY KEY (S)
    );

    TABLE C
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     CREATE TABLE C (
         C          INT                 NOT NULL,
         Cnom       VARCHAR(64)         NOT NULL,
         CONSTRAINT C_ID PRIMARY KEY (C)
    );

    TABLE P
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE P (
         P          INT                 NOT NULL,
         Pnom       VARCHAR(64)         NOT NULL,
         CONSTRAINT P_ID PRIMARY KEY (P)
    );

    TABLE G
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    CREATE TABLE G (
         G          INT                 NOT NULL,
         Gnom       VARCHAR(64)         NOT NULL,
         CONSTRAINT G_ID PRIMARY KEY (G)
    );

    TABLE R
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    CREATE TABLE R (
         R          INT                 NOT NULL,
         Rnom       VARCHAR(64)         NOT NULL,
         S          INT                 NOT NULL,
         P          INT                 NOT NULL,
         H          INTERVAL            NOT NULL,
         C          INT                 NOT NULL,
         CONSTRAINT R_ID UNIQUE (R),
         CONSTRAINT R_SH PRIMARY KEY (S, H),
         CONSTRAINT R_PH UNIQUE (P, H),
         CONSTRAINT R_P FOREIGN KEY (P) REFERENCES P,  
         CONSTRAINT R_S FOREIGN KEY (S) REFERENCES S,  
         CONSTRAINT R_C FOREIGN KEY (C) REFERENCES C  
    ) ;

    TABLE HGS
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    CREATE TABLE HGS (
         G          INT                 NOT NULL,
         S          INT                 NOT NULL,
         H          INTERVAL            NOT NULL,
         CONSTRAINT HGS_ID PRIMARY KEY (G, H),
         CONSTRAINT HGS_G FOREIGN KEY (G) REFERENCES G, 
         CONSTRAINT HGS_R FOREIGN KEY (S, H) REFERENCES R (S, H)
    );

    On observera qu’il n’y a pas de table H (HORAIRE) : Le temps n’a en réalité pas à faire l’objet d’une entité-type au niveau du MCD, mais plutôt d’un type du genre INTERVALLE (INTERVAL), qui reste à définir de façon précise : JOUR plus tranche horaire.


    Bilan :

    La modélisation de l’énoncé initial n’est pas triviale, car les AGL ne permettent pas de produire les tables ci-dessus sans intervention manuelle (le coup de l’attribut H). Par ailleurs, sans une connaissance suffisante de la théorie relationnelle (dépendances fonctionnelles, axiomes d’Armstrong, théorème de Heath, clé candidate, BCNF...), la mise en évidence et le respect des DF énumérées relève d’une mission quasi impossible. Sans la mise en œuvre d’un type de la famille INTERVAL, la bilocation et le surbooking sont garantis...

    Le temps est décidemment quelque chose de bien compliqué à maitriser, et même des cracks se font piéger et retoquer...

    On peut dire qu'avec un tel exercice, vous avez été particulièrement gâté
    (a) Faites simple, mais pas plus simple ! (A. Einstein)
    (b) Certes, E=mc², mais si on discute un peu, on peut l’avoir pour beaucoup moins cher... (G. Lacroix, « Les Euphorismes de Grégoire »)
    => La relativité n'existerait donc que relativement aux relativistes (Jean Eisenstaedt, « Einstein et la relativité générale »)

    __________________________________
    Bases de données relationnelles et normalisation : de la première à la sixième forme normale
    Modéliser les données avec MySQL Workbench
    Je ne réponds pas aux questions techniques par MP. Les forums sont là pour ça.

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

Discussions similaires

  1. Réponses: 8
    Dernier message: 07/01/2013, 17h35
  2. Réservation de salles sur long terme
    Par phberanger dans le forum Exchange Server
    Réponses: 0
    Dernier message: 02/04/2009, 12h03
  3. Création d'un Planning réservation de salles
    Par ricolaricot dans le forum Macros et VBA Excel
    Réponses: 15
    Dernier message: 19/11/2008, 09h52
  4. Réponses: 1
    Dernier message: 28/09/2006, 10h55
  5. [Dates] Réservation de salles...
    Par jdotti dans le forum Langage
    Réponses: 5
    Dernier message: 13/03/2006, 23h59

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