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 :

Conseil diagramme ER


Sujet :

Schéma

  1. #21
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 257
    Points : 74
    Points
    74
    Par défaut
    Bonsoir,

    J'ai bien compris pour le fait que la table PPhoneNumber(ancienne) était en plus. Mais pour le conseil que vous m'avez donné pour les noms(exemple du père et fils), est ce qu'il est nécessaire de créer une nouvelle table?

    Pour le problème de l'attribut NoStreet, j'ai changé le type de l'attribut en VARCHAR(10). Même changement pour la table MedicalCenter.

    La suite de cette étape du projet est de normaliser chacune des tables pour qu'elle soit en 3NF. Je vois que toutes les tables sont d'abord en 1NF si je ne me trompe pas. Pour ce qui est de 2NF, pour toutes les tables autres que Appointment, la règle 2NF est respectée de façon triviale(à cause de la présence d'une clé à un seul attribut ou de l'absence d'autres attributs à part la clé). Pour la table Appointment, la règle 2NF est aussi vérifiée.

    Pour ce qui est de la règle 3NF, la définition que j'ai souvent lue est : "la table doit être en 2NF et il faut que tout attribut autre que ceux de la clé ne dépende pas d'un autre ensemble d'attributs autres que la clé". La définition me pose un problème pour la table Person par exemple, car IdNumber n'est pas un attribut de la clé primaire(même si c'est une clé) et qu'il implique forcément tout autre attribut de la table car c'est une clé.

  2. #22
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 100
    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 : 8 100
    Points : 31 536
    Points
    31 536
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Citation Envoyé par Miko95 Voir le message
    pour le conseil que vous m'avez donné pour les noms (exemple du père et fils), est ce qu'il est nécessaire de créer une nouvelle table?
    Créer une table des noms et une autre des prénoms ? Certes non ! Sinon il faudrait généraliser cette façon de faire pour l’ensemble des attributs de l’ensemble des tables... A l’inverse, je voulais vous signifier que la table PPhoneNumber des numéros de téléphone ne se justifiait pas plus qu’une table des prénoms, etc.

    Injection de contraintes au niveau SQL :

    Quand vous passerez du MLD au script de création des tables, vous définirez les contraintes simples à mettre en œuvre (outre évidemment l’intégrité référentielle).

    Par exemple :

    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE PERSON
    (    IdPerson PLS_INTEGER     NOT NULL
       , ...
       , Gender   CHAR(1)         NOT NULL  CHECK (Gender in ( '1' , '2'))
       , ...
    ) ;

    Respect des formes normales :

    La 1NF est respectée car chaque attribut est de type scalaire (atomique).

    Au sujet de la 2NF. Vous écrivez :
    la règle 2NF est respectée de façon triviale (à cause de la présence d'une clé à un seul attribut ou de l'absence d'autres attributs à part la clé).
    En fait, vous faites référence à une définition très affaiblie de la 2NF, car vous parlez de « la clé » alors que toutes les clés de la table sont concernées. Personnellement je fais référence à la définition donnée par son inventeur, Ted Codd :
    A relation R is in second form normal if it is in first normal form and every non-prime attribute of R is fully dependant on each candidate key of R.
    Concernant cette définition :

    Dans le contexte SQL (vision déformée du Modèle Relationnel de Données inventé par Codd), vous pouvez remplacer « relation » par « table ».

    Quant au concept de clé candidate, voyez la discussion entamée par highlander03, notamment le 4e post.

    Un « non-prime attribute » est un attribut qui ne participe à aucune clé candidate de R.

    Je rappelle au besoin la définition de la dépendance fonctionnelle totale (full dependency) :
    Étant donné deux sous-ensembles d’attributs X et Y de l’en-tête d’une relation R, la dépendance fonctionnelle X → Y est totale (ou irréductible, ou élémentaire) si :

    — Y est singleton (Y ne contient qu’un seul élément, c'est-à-dire un seul attribut de l’en-tête de R) ;
    — La dépendance fonctionnelle n’est pas triviale, c'est-à-dire que Y n’est pas inclus dans X (tout ou partie) ;
    — Il n’existe pas Z strictement inclus dans X tel que Z → Y.

    Avant d’affirmer qu’une table respecte la 2NF, il est donc nécessaire d’avoir fourni la liste de ses clés candidates et pas seulement une d’entre elles.

    Vous évoquez le cas de la table Appointment : Êtes-vous certain que la clé que vous avez retenue est satisfaisante ? En l’état, un médecin et un patient ne pourront se rencontrer qu’une seule fois... En revanche, au même moment, un patient pourra consulter plus d’un médecin et un médecin pourra recevoir plus d’un patient, tout cela fait un peu désordre...

    Concernant la 3NF. Vous avez retenu la définition suivante :

    la table doit être en 2NF et il faut que tout attribut autre que ceux de la clé ne dépende pas d'un autre ensemble d'attributs autres que la clé.
    Là encore, vous mentionnez « la clé », alors que toutes les clés candidates de la table sont parties prenantes. Toujours de Ted Codd:
    A relation R is in third form normal if it is in second normal form and every non-prime attribute of R is non-transitively dependant on each candidate key of R.

    Dans ces conditions, votre problème a sa solution, alors que votre définition vous embarrasse, je vous cite :
    La définition me pose un problème pour la table Person par exemple, car IdNumber n'est pas un attribut de la clé primaire(même si c'est une clé) et qu'il implique forcément tout autre attribut de la table car c'est une clé.
    En passant, n’écrivez pas « il implique », mais « il détermine » (revoyez le 4e post de highlander03).

    Au fait, quel est le rôle de l’attribut IdNumber ?

    Et veuillez fournir l'inventaire complet des clés des tables, car en l'occurrence votre représentation graphique ne suffit pas.

  3. #23
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 257
    Points : 74
    Points
    74
    Par défaut
    Bonjour,

    Donc pour la règle 2NF, selon cette définition, toutes les tables respectent la règle.

    Pour ce qui est de l'attribut IdNumber, c'est le numéro d'identité de la personne. L'attribut IdPerson n'était pas là au début, je l'ai ajouté suite à votre remarque sur le fait de choisir en plus une clé primaire de type entière pour les jointures(clé invisible pour l'utilisateur).

    Pour le problème de la table Appointment, j'ai corrigé le diagramme en ajoutant les attributs Date et Hour à la clé primaire.

    L'inventaire des clés candidates de chaque table :

    Person: {IdPerson},{IdNumber}
    PPhoneNumber: {IdPerson,PhoneNumber}
    City: {IdCity},{NameCity,PostalCode}
    MedicalCenter: {MedCenterId}
    MedPhoneNumber: {PhoneNumber}
    Patient: {IdPatient}
    Worker: {IdWorker}
    Physician: {IdPhysician}
    Secretary: {IdSecretary}
    Appointment: {IdPatient,IdPhysician,Date,Hour}
    Patient_Allergy: {IdPatient,IdAllergy}
    Patient_Disease: {IdPatient,IdDisease}
    Allergy: {IdAllergy},{NameAllergy}
    Disease: {IdDisease},{NameDisease}
    Physician_Speciality: {IdPhysician,IdSpeciality}
    Speciality: {IdSpeciality},{NameSpeciality}

    A part tous ces problèmes, j'ai une autre question très importante:
    Dans mon MCD, j'avais prévu qu'un Physician peut être aussi un Patient, car lui aussi peut avoir besoin de soins et peut prendre donc RDV avec un autre Physician. Est ce que dans le MLD cette propriété est vérifiée? Autrement dis, est-ce que selon la structure du MLD courant, un Physician peut prendre RDV avec un autre Physician?

  4. #24
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 100
    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 : 8 100
    Points : 31 536
    Points
    31 536
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Citation Envoyé par Miko95 Voir le message
    Donc pour la règle 2NF, selon cette définition, toutes les tables respectent la règle.
    D’accord. Mais pourquoi passez-vous la 3NF sous silence ?

    Citation Envoyé par Miko95 Voir le message
    Pour ce qui est de l'attribut IdNumber, c'est le numéro d'identité de la personne. L'attribut IdPerson n'était pas là au début, je l'ai ajouté suite à votre remarque sur le fait de choisir en plus une clé primaire de type entière pour les jointures (clé invisible pour l'utilisateur).
    J’ai bien compris votre intention. Toutefois, ma question est d’ordre sémantique et c’est là que je commence à avoir des doutes. En effet, si IdPerson est un attribut technique pour lequel on n’a aucun état d’âme à avoir, par contraste IdNumber caractérise une propriété naturelle de l’entité-type Person, ayant donc un sens pour l’utilisateur. Sémantiquement parlant, je conçois que les secrétaires et les médecins soient dotés d’un matricule, et les patients d’un numéro qui n’a rien à voir avec un matricule. L’attribut IdNumber actuel semble relever d’une salade sémantique et représenter soit un matricule de worker, soit un numéro de patient. Dans ces conditions, cet attribut devrait disparaître de l’entité-type Person, au bénéfice d’un matricule qui soit un attribut (clé candidate) de l’entité-type Worker et d’un numéro de patient (ou d’un numéro de sécurité sociale) qui soit un attribut (clé candidate) de l’entité-type Patient. J’irais même plus loin, peut-être le matricule des workers relève-t-il encore de la confusion sémantique, car pour les médecins, le numéro ADELI (attribut de l’entité-type Physician) pourrait convenir, tandis que seul le personnel non médical (les secrétaires) serait doté d’un matricule.

    En résumé, je doterais volontiers l’entité-type Patient d’un attribut NIR (numéro de sécurité sociale), l’entité-type Physician d’un attribut ADELI (ou comparable) et l’entité-type Secretary d’un attribut Matricule. Mais bien sûr vous n’êtes pas obligé de me suivre. A noter que si l’on procède comme je le vois, l’entité-type Worker n’est plus qu’une coquille vide et peut disparaître (les entités-types Physician et Secretary devenant des sous-types directs de l’entité-type Person).

    Inventaire des clés. Quelques remarques, indépendamment de ce que j’ai dit à propos de Person :
    Table MedicalCenter
    {MedCenterId}, {MedCenterName, NoStreet, NameStreet, IdCity}
    Si je vous suis, concernant la 2e clé candidate, on pourrait avoir deux centres ayant le même nom dans la même ville. Exact ?

    Table Appointment
    {IdPatient, IdPhysician, Date, Hour}
    Cette clé n’est pas acceptable, car si on vous suit, un médecin peut encore recevoir plusieurs patients au même moment et un patient être reçu par plusieurs médecins simultanément...
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    Patient    Physician    Date    Hour    Notes
       pat1         phy1      d1      h1       n1
       par2         phy1      d1      h1       n2
       pat1         phy2      d1      h1       n3
    En réalité, la règle d’unicité des clés candidates est respectée, mais pas celle d’irréductibilité (cette clé est donc seulement une surclé, revoyez le 4e post de la discussion entamée par highlander03).


    Citation Envoyé par Miko95 Voir le message
    est-ce que selon la structure du MLD courant, un Physician peut prendre RDV avec un autre Physician?
    Oui. si phy1 est médecin, il est aussi une personne et il peut donc figurer à la fois dans la table Person, dans la table Physician et dans la table Patient. Ainsi, phy1 peut donc prendre rendez-vous avec phy2 :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    Person {IdPerson    ...}
                phy1
                phy2
    
    Physician {IdPhysician    ...}
                      phy1
                      phy2
    
    Patient {IdPatient    ...}
                  phy1
    
    Appointment {IdPatient    IdPhysician    Date    Hour    Notes}
                      phy1           phy2      d1      h1       n1
    Mais attention, phy1 ne doit pas pouvoir prendre rendez-vous avec lui-même (ce qui implique la mise en œuvre d’une contrainte au niveau de la table Appointment : CHECK (IdPatient <> IdPhysician)).
    De même, si phy1 prend rendez-vous avec phy2, prévoir une contrainte qui fasse qu’il ne puisse recevoir des patients à ce moment-là (trigger en vue)...

  5. #25
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 257
    Points : 74
    Points
    74
    Par défaut
    Bonsoir,

    Avant de normaliser vers 3NF, j'attends de finir le diagramme sans erreur(je ne sais pas si ca devrait se faire dans cet ordre).

    Pour l'attribut IdNumber, je préfère rester avec; en fait, mon intention était juste de garder le numéro d'identité de la personne peut importe qui elle est(patient,médecin,secrétaire). C'est vrai qu'au niveau sémantique ca n'est pas très juste mais ca suffira pour ce devoir.

    Pour la table MedicalCenter, c'était bien mon intention par rapport à la deuxième clé candidate. Mais c'est vrai que c'est vu à l'extrême donc j'ai supprimé cette clé candidate.

    J'ai bien compris pour le problème de la table Appointment, j'ai corrigé la table pour le problème "Un même patient peut avoir plusieurs RDV en même temps" mais le problème "Un même médecin peut recevoir plusieurs patients en même temps" n'est pas corrigé donc je ne vois pas quelle serait la solution à ce problème, peut être faut-il séparer la table en deux tables?

  6. #26
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 100
    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 : 8 100
    Points : 31 536
    Points
    31 536
    Billets dans le blog
    16
    Par défaut
    Bonsoir,


    Citation Envoyé par Miko95 Voir le message
    Pour l'attribut IdNumber, je préfère rester avec; en fait, mon intention était juste de garder le numéro d'identité de la personne peut importe qui elle est (patient, médecin, secrétaire). C'est vrai qu'au niveau sémantique ca n'est pas très juste mais ca suffira pour ce devoir.
    Soit. Mais si un jour vous modélisez « pour de vrai », n’oublie pas ce que je vous ai dit.

    Citation Envoyé par Miko95 Voir le message
    J'ai bien compris pour le problème de la table Appointment, j'ai corrigé la table pour le problème "Un même patient peut avoir plusieurs RDV en même temps" mais le problème "Un même médecin peut recevoir plusieurs patients en même temps" n'est pas corrigé donc je ne vois pas quelle serait la solution à ce problème, peut être faut-il séparer la table en deux tables?
    Jugement de Salomon ? Contentez-vous plutôt de définir une 2e clé candidate :
    {IdPhysician, DateApp, HourApp}
    Ce qui fait qu’au niveau SQL, vous aurez ceci :

    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 Appointment
    (
          IdPatient      INTEGER       NOT NULL
        , IdPhysician    INTEGER       NOT NULL
        , DateApp        DATE          NOT NULL
        , HourApp        TIME          NOT NULL
        , Duracy         INTEGER       NOT NULL
        , Notes          VARCHAR(255)  NOT NULL
     , CONSTRAINT Appointment_PK PRIMARY KEY (IdPatient, DateApp, HourApp) 
     , CONSTRAINT Appointment_AK UNIQUE (IdPhysician, DateApp, HourApp) 
     , CONSTRAINT A Appointment_Patient_FK FOREIGN KEY (IdPatient) REFERENCES Patient
     , CONSTRAINT Appointment_ Physician_FK FOREIGN KEY (IdPhysician) REFERENCES Physician 
     , CONSTRAINT Appointment_CHK_01 CHECK (IdPatient <> IdPhysician)
    ) ;

  7. #27
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 257
    Points : 74
    Points
    74
    Par défaut
    Ok donc maintenant j'ai fais les corrections nécessaires.

    Maintenant je dois normaliser mes tables en 3NF, je les ait toutes passées en revues et il me semble qu'elles respectent toutes la règle de 3NF sauf la table Secretary. En effet, l'attribut "Salary" dépend fonctionnellement de "HoursWorked" dans le cas ou les secrétaires sont tous(toutes) payés(ées) au même tarif à l'heure. Dans ce cas, quelles sont les solutions envisageables?

  8. #28
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 100
    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 : 8 100
    Points : 31 536
    Points
    31 536
    Billets dans le blog
    16
    Par défaut Théorème de Heath
    Pour normaliser la table Secretary il suffit d’appliquer le théorème de Heath (1971), dont l’énoncé mis à la sauce SQL (Heath n’utilise pas le mot « table » mais le mot « relation » pris dans son acception mathématique) est le suivant :
    Soit la table T {X, Y, Z} dans laquelle X, Y et Z sont des sous-ensembles d’attributs de T. Si T satisfait à la dépendance fonctionnelle X Y, alors R est égale à la jointure de ses projections sur {X, Y} et {X, Z}.
    Dans votre cas, on a la table Secretary dont l’en-tête est le suivant :
    Secretary {IdSecretary, HoursWorked, Salary}
    dans lequel {HoursWorked} joue le rôle de X, {Salary} celui de Y et {IdSecretary} celui de Z. Par application du théorème, on peut casser Secretary ainsi (clés soulignées) :
    Secretary {IdSecretary, HoursWorked}
    HoursWorked {HoursWorked, Salary}

  9. #29
    Membre régulier
    Homme Profil pro
    Étudiant
    Inscrit en
    Décembre 2007
    Messages
    257
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 34

    Informations professionnelles :
    Activité : Étudiant
    Secteur : High Tech - Opérateur de télécommunications

    Informations forums :
    Inscription : Décembre 2007
    Messages : 257
    Points : 74
    Points
    74
    Par défaut
    Bonjour,

    Merci beaucoup pour l'aide, la conception de la base de données est presque terminée. Au final, je me suis rendu compte que l'attribut Salary est dérivé de l'attribut HoursWorked sachant que les secrétaires sont payés au même tarif; donc j'ai supprimé l'attribut Salary de la table.

    J'ai pas mal cherché sur internet comment mettre des contraintes pour les attributs des tables. Par exemple, pour vérifier si un nom ou prénom de contient que des lettres, etc...
    Quelle est l'alternative qu'on devrait utiliser: mettre des contraintes au niveau SQL lors de la création de la table, ou est ce qu'on le fait à une étape ultérieure avec d'autres techniques(peut être question de performance)?

  10. #30
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 100
    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 : 8 100
    Points : 31 536
    Points
    31 536
    Billets dans le blog
    16
    Par défaut
    J'ai pas mal cherché sur internet comment mettre des contraintes pour les attributs des tables. Par exemple, pour vérifier si un nom ou prénom de contient que des lettres, etc...
    Je vous ai fourni des exemples simples :
    Code SQL : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    CREATE TABLE PERSON
    (    IdPerson PLS_INTEGER     NOT NULL
       , ...
       , Gender   CHAR(1)         NOT NULL  CHECK (Gender IN ( '1' , '2'))
       , ...
    ) ;
    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 Appointment
    (
          IdPatient      INTEGER       NOT NULL
        , IdPhysician    INTEGER       NOT NULL
        , DateApp        DATE          NOT NULL
        , HourApp        TIME          NOT NULL
        , Duracy         INTEGER       NOT NULL
        , Notes          VARCHAR(255)  NOT NULL
     , CONSTRAINT Appointment_PK PRIMARY KEY (IdPatient, DateApp, HourApp) 
     , CONSTRAINT Appointment_AK UNIQUE (IdPhysician, DateApp, HourApp) 
     , CONSTRAINT A Appointment_Patient_FK FOREIGN KEY (IdPatient) REFERENCES Patient
     , CONSTRAINT Appointment_ Physician_FK FOREIGN KEY (IdPhysician) REFERENCES Physician 
     , CONSTRAINT Appointment_CHK_01 CHECK (IdPatient <> IdPhysician)  
    ) ;
    Mais pour des contrôles plus sophistiqués, il faudra en passer par des triggers (vous n’y couperez pas), par exemple pour garantir qu’un médecin qui est reçu en tant que patient par un confrère n’a pas rendez-vous au même moment avec un patient. Si vous effectuez ce genre de contrôle par programme, vous risquez le bug (omission par exemple) lors de la maintenance des programmes.

    Concernant le contrôle que vous évoquez, vérifier si un nom ou prénom de contient que des lettres, vous pourrez créer une fonction en ce sens, ça n'est pas difficile (voyez les exemples de SQLpro). Mais là aussi, il y a un risque, car dans vos requêtes SQL de mise à jour de la base, vous pouvez oublier d’utiliser la fonction. Les choses seront plus sûres quand SQL (Sorry Query Language) permettra de définir des types de façon simple, avec contrôle possible des données d’un tel type, selon les recommandations du Modèle Relationnel de Données.

    Quoi qu'il en soit, sous-traiter le plus possible au SGBD.

Discussions similaires

  1. Conseil Use case et diagramme d'activité
    Par touftouf57 dans le forum UML
    Réponses: 6
    Dernier message: 05/12/2012, 09h04
  2. conseils sur un diagramme de sequence
    Par fou-jea dans le forum UML
    Réponses: 0
    Dernier message: 17/09/2012, 00h06
  3. Besoin de conseil sur des diagrammes UML
    Par lucares dans le forum Autres Diagrammes
    Réponses: 4
    Dernier message: 10/11/2011, 22h14
  4. Débutant : Conseil pour diagramme de classe
    Par Looney dans le forum Débuter
    Réponses: 0
    Dernier message: 11/10/2009, 23h28
  5. conseils pour diagramme de séquence système et d'activités
    Par maa dans le forum Autres Diagrammes
    Réponses: 34
    Dernier message: 08/12/2008, 13h18

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