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 :

Une table ou deux tables.


Sujet :

Schéma

  1. #1
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut Une table ou deux tables.
    "bonjour,

    je travaille pour un centre agricole qui a des interventions de 2 types, des traitements à base de produit phytosanitaire et des opérations courantes ( cueillette ). Pour les opérations courantes, il y a une date de debut, et une date de fin, pour les operations de traitement, il y a une date de debut, une date de fin et une date de "reentre" ( 12H00 environs apres la date de fin ), j'ai modeliser les intervention dans une seule table pour les deux types d'operations.

    je voudrais savoir quels sont les opérations courantes dont la date de debut et la date de fin sont compris entre la date de fin et la date de reentre des operations phytosanitaire.
    "

    pensez vous qu'il est preferable de décomposer ma table en deux tables :

    interventions_phytosanitaire(id_terrain, designation, datedebut, datefin, date reentre )
    interventions_courantes(id_terrain, designation,datedebut,datefin,...)

    il est aussi possible de mettre en place un heritage avec
    intervention( id_terrain, designation, datedebut, datefin )

    quel solution est la meilleur d'apres vous sachant que le but est la requete explique ci dessus ?

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Avril 2007
    Messages
    81
    Détails du profil
    Informations personnelles :
    Âge : 42
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Avril 2007
    Messages : 81
    Points : 102
    Points
    102
    Par défaut
    Bonjour,

    Moi je vois plutot les deux tables suivantes :

    Type_Intervention (id_Type_Interv,designation)
    Intervention (id_Terrain,Date_Debut, Date_Fin, Date_Reentre, id_Type_Interv)


    La requête sera facile à construire.

    Qu'est-ce que t'en pense ?

  3. #3
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut autre solution
    merci de ta reponse...

    Bonjour,

    Moi je vois plutot les deux tables suivantes :

    Type_Intervention (id_Type_Interv,designation)
    Intervention (id_Terrain,Date_Debut, Date_Fin, Date_Reentre, id_Type_Interv)


    La requête sera facile à construire.

    Qu'est-ce que t'en pense ?
    date de reentrée est optionnel, là encore

    on peut aussi imaginer Intervention(id_terrain,date_debut,date_fin,date_reentre,designation,boolean istraitement )

    je ne comprend pas que vous trouviez cette requete facile, je la trouve difficile, je comprend pas...

    yann

  4. #4
    Membre chevronné
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Août 2007
    Messages
    797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Août 2007
    Messages : 797
    Points : 2 060
    Points
    2 060
    Par défaut
    Citation Envoyé par ylarvor Voir le message
    je voudrais savoir quels sont les opérations courantes dont la date de debut et la date de fin sont compris entre la date de fin et la date de reentre des operations phytosanitaire.

    pensez vous qu'il est preferable de décomposer ma table en deux tables :

    interventions_phytosanitaire(id_terrain, designation, datedebut, datefin, date reentre )
    interventions_courantes(id_terrain, designation,datedebut,datefin,...)
    Pour ma part, je pense que les requêtes à effectuer ne doivent pas influencer la manière de modéliser les données, sauf dans des cas particulier (datawarehouse, infocentre, ...)

    Manifestement les interventions sont très similaires. la seule différence est que l'intervention phytosanitaire contient une date de rentrée en plus. On est typiquement dans le cas d'une spécialisation : l'intervention phytosanitaire est une intervention courante spécialisée. Je modéliserais comme suit.

    MCD : Nom : PHYTOMCD.gif
Affichages : 55
Taille : 1,5 Ko
    MLD : Nom : PHYTOMLD.gif
Affichages : 47
Taille : 1,4 Ko

    Chaque occurrence de Interv_phytosanitaire doit aussi se retrouver dans Interv_courante.
    N'oubliez pas de consulter les Cours Merise et la F.A.Q. Merise
    _______________________________________________________

    Les Règles du Club Developpez.com
    Vous avez votre réponse ? Merci de cliquer sur

  5. #5
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut specialisation = solution.
    Je ne connaissais pas la spécialisation, je vais suivre votre conseil, j'utilise power amc pour modéliser la base, donc aucun souci, je pense.

    concernant la requête, avez-vous un conseil à me donner ?

    merci.

  6. #6
    Membre chevronné
    Homme Profil pro
    Chef de projet en SSII
    Inscrit en
    Août 2007
    Messages
    797
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 61
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Chef de projet en SSII

    Informations forums :
    Inscription : Août 2007
    Messages : 797
    Points : 2 060
    Points
    2 060
    Par défaut
    Citation Envoyé par ylarvor Voir le message
    j'utilise power amc pour modéliser la base, donc aucun souci, je pense.
    Les modèles que j'ai joints sont issus d'AMC*DESIGNOR (V4) qui est l'ancêtre de PowerAMC, donc pas de souci effectivement.

    Citation Envoyé par ylarvor Voir le message
    concernant la requête, avez-vous un conseil à me donner ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    SELECT ICO.id_terrain                  | + toute autre colonne souhaitée
      FROM interv_courante ICO,
           interv_courante IPC,            | partie int. courante d'une int. phyto
           interv_phytosan IPP 
     WHERE IPC.id_terrain = IPP.id_terrain | ==> IPC est une int. phyto
       AND ICO.datedebut >= IPC.datefin
       AND ICO.datefin <= IPP.datereentre
    Cette requête ne répond pas complètement à la question car elle ramène aussi les interventions phytosanitaires dont les dates de début et de fin sont comprises dans les dates de fin et de reentre d'autres interventions phytosanitaires.

    Pour cela il faut que les ICO soient des interventions courantes au sens strict c'est-à-dire sans correspondance dans la table interv_phytosan :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    SELECT ICO.id_terrain                  | + toute autre colonne souhaitée
      FROM interv_courante ICO,
           interv_courante IPC,            | partie int. courante d'une int. phyto
           interv_phytosan IPP 
     WHERE IPC.id_terrain = IPP.id_terrain | ==> IPC est une int. phyto
       AND ICO.id_terrain NOT IN           | }
           (SELECT id_terrain              | }==> ICO n'est pas une int. phyto
              FROM interv_phytosan)        | }
       AND ICO.datedebut >= IPC.datefin
       AND ICO.datefin <= IPP.datereentre
    N'oubliez pas de consulter les Cours Merise et la F.A.Q. Merise
    _______________________________________________________

    Les Règles du Club Developpez.com
    Vous avez votre réponse ? Merci de cliquer sur

  7. #7
    Membre expérimenté

    Profil pro
    Inscrit en
    Août 2002
    Messages
    1 249
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Août 2002
    Messages : 1 249
    Points : 1 745
    Points
    1 745
    Par défaut merci beaucoup...
    Avec cela, je suis rassure, je peux realiser le projet dans les prochaines semaines.

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

Discussions similaires

  1. Aide pour une requête sur deux tables
    Par Andry dans le forum Développement
    Réponses: 2
    Dernier message: 05/11/2007, 07h14
  2. [Access] Fonction TOP dans une requête sur deux tables
    Par pc75 dans le forum Langage SQL
    Réponses: 4
    Dernier message: 04/07/2007, 09h31
  3. Réponses: 2
    Dernier message: 31/05/2007, 15h58
  4. Réponses: 2
    Dernier message: 25/01/2007, 11h34
  5. faire une différence entre deux tables
    Par geay dans le forum Langage SQL
    Réponses: 1
    Dernier message: 04/09/2006, 15h33

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