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 :

Maintenance de camions


Sujet :

Schéma

  1. #141
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Ça n'a jamais fonctionné pour moi depuis le début


    Code sql : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
     
    INSERT INTO CAMION (LocalisationId, CamionImmat, CamionDateAchat) 
        SELECT MAX(LocalisationId), 'immat234', '2010-07-01' FROM LOCALISATION ;

    Résultat :

    Msg*207, Niveau*16, État*1, Ligne*1
    Nom de colonne non valide*: 'LocalisationId'.
      0  0

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


    Citation Envoyé par ordigil Voir le message
    Maintenant j'ai ça CAMION :

    Table CAMION :

    Colonne CamionVIN

    La colonne VIN n’est pas du type DATE, donc la valeur par défaut '9999-12-31' n’est pas pertinente. Par ailleurs, cette colonne est l’objet d’une clé candidate, donc une valeur par défaut n’a pas lieu d’être.

    Colonne CamionDateAchat

    La colonne CamionDateAchat est NOT NULL est n’a pas de valeur par défaut. On est en phase ?

    Pour le reste, c’est d’accord (y-compris la vue).
    (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.
      2  0

  3. #143
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Ça n'a jamais fonctionné pour moi depuis le début


    INSERT INTO CAMION (LocalisationId, CamionImmat, CamionDateAchat)
    SELECT MAX(LocalisationId), 'immat234', '2010-07-01' FROM LOCALISATION ;
    Résultat :

    Msg*207, Niveau*16, État*1, Ligne*1
    Nom de colonne non valide*: 'LocalisationId'.
    Forcément, car regardez la structure de la table CAMION : la colonne utilisée pour la clé primaire est CamionId, donc codez :

    INSERT INTO CAMION (CamionId, CamionImmat, CamionDateAchat) 
        SELECT MAX(LocalisationId), 'immat234', '2010-07-01' FROM LOCALISATION ;
    
    
    (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.
      2  0

  4. #144
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Bon j'ai corrigé directement dans mon message et apporté quelques petites corrections donc toutes les dates par default = 9999-12-31. De cette façon ça va habituer l'utilisateur ç porter attention aux dates. USDOT et ICCMC = 1111111 car il y a des camions qui n'ont pas ces numéros de permis. Wheelbase = 0 car il faut parfois mesurer le camion pour le savoir. Manufacturer, Model, Number et Immatt pas de valeur par défaut pour forcer l'utilisateur à les remplir. GVWR = 0 car des fois on ne le sait pas. Color =White parce que la majorité des camions acheté sont blancs. Ça vous va comme j'ai fait ???


    Citation Envoyé par fsmrel Voir le message
    Bonjour ordigil,





    Table CAMION :

    Colonne CamionVIN

    La colonne VIN n’est pas du type DATE, donc la valeur par défaut '9999-12-31' n’est pas pertinente. Par ailleurs, cette colonne est l’objet d’une clé candidate, donc une valeur par défaut n’a pas lieu d’être.

    Colonne CamionDateAchat

    La colonne CamionDateAchat est NOT NULL est n’a pas de valeur par défaut. On est en phase ?

    Pour le reste, c’est d’accord (y-compris la vue).
      0  0

  5. #145
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Quelqu'un m'a induit en erreur alors



    Pour en venir à l’achat d’un camion, avec sa transmission et ses deux différentiels :

    Il faut évidemment commencer par créer le camion. On sait que CAMION est une spécialisation de LOCALISATION, on doit donc d’abord créer une ligne dans la table LOCALISATION (cf. le post #25) :
    INSERT INTO LOCALISATION (LocalisationNote) VALUES ('') ; 
    
    Dans un 2e temps, on crée une ligne dans la table CAMION :
    INSERT INTO CAMION (LocalisationId, CamionImmat, CamionDateAchat) 
        SELECT MAX(LocalisationId), 'immat01', '2012-07-01' FROM LOCALISATION ;
    





    Citation Envoyé par fsmrel Voir le message
    Forcément, car regardez la structure de la table CAMION : la colonne utilisée pour la clé primaire est CamionId, donc codez :

    INSERT INTO CAMION (CamionId, CamionImmat, CamionDateAchat) 
        SELECT MAX(LocalisationId), 'immat234', '2010-07-01' FROM LOCALISATION ;
    
    
      0  0

  6. #146
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Quelqu'un m'a induit en erreur alors
    Entre le post #25 et par exemple le post #55, de l’eau a coulé sous les ponts…

    Faites toujours référence à la dernière structure de la table, laquelle sera encore susceptible d’évoluer !
    (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.
      2  0

  7. #147
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut

    Si la table CAMION est correcte pour vous, je pense qu'elle est complète maintenant. Mais MOTEUR, TRANSMISSION ET DIFFERETIELS ne le sont pas encore. Maintenant c'est plus difficile changer les tables et je ne veux pas non plus que vous ayez toujours à réécrire vos scripts. Mais ça m'a pris quelques heures pour réparer CAMION, CAMION_LOCALISATION_V, MOTEUR et MOTEUR_COMPOSANT_V hier Je ne sais pas où vous trouvez la patience pour écrire tous ces scripts Vous êtes vraiment courageux



    Citation Envoyé par fsmrel Voir le message
    Entre le post #25 et par exemple le post #55, de l’eau a coulé sous les ponts…

    Faites toujours référence à la dernière structure de la table, laquelle sera encore susceptible d’évoluer !
      0  0

  8. #148
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    On a du mal à se débarrasser de plus de 50 ans de programmation intensive et tout ça

    En attendant :

    Pour que l’utilisateur soit mieux informé de la situation quand on la lui affiche (ou imprime), j’ai déclaré une vue supplémentaire, CAMION_LOCALISATION_ECRAN_V, qui est une vue sur la vue CAMION_LOCALISATION_V (laquelle doit servir pour les mises à jour).


     
    CREATE VIEW CAMION_LOCALISATION_ECRAN_V
        (VIN           
       , Number
       , Immat
       , Manufacturer
       , Model
       , Color
       , WheelBase
       , USDOT, ICCMC
       , GVWR, FRGAWR,[2NDGVWR], [3RDGVWR]
       , DateMfg
       , DateAchat
       , DateSold
       , Note
        )
    AS
           SELECT VIN
                , Number
                , Immat
                , Manufacturer
                , Model
                , Color
                , CASE(CAST(WheelBase AS VARCHAR)) WHEN '0' THEN '' ELSE CAST(WheelBase AS VARCHAR)  END AS WheelBase
                , USDOT
                , ICCMC
                , GVWR, FRGAWR,[2NDGVWR], [3RDGVWR]
                , CASE(CAST(DateMfg AS VARCHAR)) WHEN '9999-12-31' THEN 'valoriser !' ELSE CAST(DateMfg AS VARCHAR)  END AS DateMfg
                , CASE(CAST(DateAchat AS VARCHAR)) WHEN '9999-12-31' THEN 'valoriser !' ELSE CAST(DateAchat AS VARCHAR) END AS DateAchat
                , CASE(CAST(DateSold AS VARCHAR)) WHEN '9999-12-31' THEN '' ELSE CAST(DateSold AS VARCHAR) END AS DateSold
                , Note
          FROM CAMION_LOCALISATION_V
    ;
    GO
    
    Exemple :

    Quand la date d’achat n’est pas valorisée, on le signale, etc.

    SELECT * FROM CAMION_LOCALISATION_ECRAN_V ;
    
    =>


    Je vais aller mette à jour Temp.
    (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.
      2  0

  9. #149
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Et j'ai fait ça, mes colonnes sont droites maintenant et j'ai corrigé l'erreur de date qui n'était pas NOT NULL. Maintenant je vais considérer les NOT NULL comme des erreur hahaha

    CREATE TABLE [dbo].[CAMION]
    (
          CamionId              int            NOT NULL
        , CamionVIN             varchar(24)    NOT NULL
        , CamionDateMfg         date           NOT NULL DEFAULT ('9999-12-31')
        , CamionDateAchat       date           NOT NULL DEFAULT ('9999-12-31')
        , CamionManufacturer    varchar(15)    NOT NULL
        , CamionModel           varchar(15)    NOT NULL
        , CamionWheelBase       int            NOT NULL DEFAULT 0
        , CamionColor           varchar(15)    NOT NULL DEFAULT 'White'
        , CamionNumber          varchar(6)     NOT NULL DEFAULT ''
        , CamionImmat           varchar(9)     NOT NULL DEFAULT ''
        , USDOT                 varchar(10)    NOT NULL DEFAULT '1111111'
        , ICCMC                 varchar(10)    NOT NULL DEFAULT '1111111'
        , GVWR                  int            NOT NULL DEFAULT 0
        , FRGAWR                int            NOT NULL DEFAULT 12000
        , [2NDGAWR]             int            NOT NULL DEFAULT 20000
        , [3RDGAWR]             int            NOT NULL DEFAULT 20000
        , CamionDateVente       date           NOT NULL DEFAULT ('9999-12-31')
      , CONSTRAINT CAMION_PK PRIMARY KEY (CamionId)
      , CONSTRAINT CAMION_VIN_AK UNIQUE (CamionVIN)
      , CONSTRAINT CAMION_LOCALISATION_FK FOREIGN KEY (CamionId) 
            REFERENCES  LOCALISATION (LocalisationId)
    );
    
    
    CREATE VIEW CAMION_LOCALISATION_V 
        (
           VIN, DateMfg, DateAchat, Manufacturer, Model, WheelBase, Color, Number
         , Immat, USDOT, ICCMC, GVWR, FRGAWR, [2NDGAWR], [3RDGAWR],  DateSold, Note
        )
    AS     
        SELECT CamionVIN, CamionDateMfg, CamionDateAchat, CamionManufacturer
               , CamionModel, CamionWheelBase, CamionColor, CamionNumber
               , CamionImmat, USDOT, ICCMC, .GVWR, FRGAWR, [2NDGAWR], [3RDGAWR]
               , CamionDateVente, LocalisationNote
        FROM   CAMION AS x INNER JOIN LOCALISATION AS y ON x.CamionId = y.LocalisationId
    ;
    
      0  0

  10. #150
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Vous imaginez que votre première réponse date du 26 juillet et que ce qui devait être à l'origine un petit projet tout simple se dirige vers une platte-forme de développement perpétuelle ?



    Vous avez beaucoup d'imagination en pensant à tout

    Donc je me servirai de vos Views dans mes formulaire WEB, pour PHP, interroger une table ou un view, c'est la même chose, une table est une table et j'aurai moins de codage à faire. Vous êtes vraiment un expert. Wow là ça fait une belle vue beaucoup plus près de la réalité pour l'utilisateur.
    Vous être très imaginatif J'aime beaucoup cette table et en plus je n'aurai pas besoin de coder en PHP ou en JScript ce que vous demandez à SQL Server de faire. Ça n'aura pas d'incidences négatives sur les performance de SQL Server mais ça va énormément accélérer les performances du serveur WEB avec tous ces calculs en moins à faire
      1  0

  11. #151
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Vous avez : GVWR, FRGAWR,[2NDGVWR], [3RDGVWR]

    Et moi j'ai : GVWR, FRGAWR,[2NDGAWR], [3RDGAWR]

    Car j'avais corrigé mon erreur mais lorsque vous avez mis en propre cette table, on a réintroduit l'erreur

    GAWR (Gross Axle Weight Rating)

    GVWR (Gross Vehicle Weight Rating)

    Donc puisque nous parlons du poids par essieu, c'est 2NDGAWR et 3NDGAWR qui sont les bonnes abréviations. GAWR = En français PNBE (Poids Nominal Brut sur l'Essieu)


      0  0

  12. #152
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Vous imaginez que votre première réponse date du 26 juillet et que ce qui devait être à l'origine un petit projet tout simple se dirige vers une plate-forme de développement perpétuelle ?
    Innocemment je m’étais dit : voilà un étudiant qui en veut, aidons-le !
    Mais il est un fait qu’on arrive à un projet certes assez musclé, mais instructif...

    Bon d’accord, mais en tant que retraité, ça me fait plein d’heures en moins devant une télévision débile, c’est fort appréciable et j’en profite aussi pour découvrir SQL Server...

    Bon, en espérant ne pas me prendre une avalanche, je pars à l’assaut de la montagne des moteurs !
    (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.
      2  0

  13. #153
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Donc puisque nous parlons du poids par essieu, c'est 2NDGAWR et 3NDGAWR qui sont les bonnes abréviations. GAWR = En français PNBE (Poids Nominal Brut sur l'Essieu)
    Oui ? Pour lever les ambiguïtés, présentez la structure qui convient pour la table CAMION.
    (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.
      1  0

  14. #154
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Si vous avez plaisir à enseigner, moi je prend plaisir à apprendre les choses de la bonne façon

    Mais il est un fait qu’on arrive à un projet certes assez musclé, mais instructif...
    Quel plaisir puisque vous passez en revu toutes les subtilités de SQL. Cette base de données réunit à elle seule beaucoup de matière

    J'ai vraiment du plaisir avec vous et plus c'est compliqué pour vous plus ça devient facile pour moi pour le code PHP

    La dernière version de la table que j'ai enfin mise à l'équerre, oui oui je vois toutes mes colonnes toutes droites, alors cette table Camion je n'y retoucherai plus d'ici la fin de ce projet. Elle semble englobé la totalité des paramètres des plus exigeants, si je trouve autres choses, je ferai les ajustements à la toute fin pour ne plus avoir un décalage entre Temp et DZINDZIO_TRUCKS_MANAGEMENT.


    Citation Envoyé par fsmrel Voir le message
    Oui ? Pour lever les ambiguïtés, présentez la structure qui convient pour la table CAMION.
    Alors si vous vous mettez à jour avec ma dernière version de CAMION, nous seront en synchro avec cette partie.

    Vous imaginez, en regardant tout le code que vous mettez dans cette base de données, vous le faites avec tellement de rigueur et d'une façon tellement ordonnée, qu'il est très facile de comprendre sans devoir lire des bouquins pour comprendre le code. Donc hire j'ai passé 4 heures environ pour réparer les erreurs que j'avais introduit entre les tables mais en regardant votre code, j'ai trouvé mes erreurs et j'ai pu en même temps faire mes derniers ajouts. Je suis au travail alors je reviens plus tard. Merci
      0  0

  15. #155
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Citation Envoyé par ordigil Voir le message
    Donc puisque nous parlons du poids par essieu, c'est 2NDGAWR et 3NDGAWR qui sont les bonnes abréviations. GAWR = En français PNBE (Poids Nominal Brut sur l'Essieu)
    Dans la base DZINDZIO_TRUCKS_MANAGEMENT, il y a la colonne GVWR : très bien, c’est celle que j’utilise aussi, et il y a également la colonne FRGAWR, on est en phase. Mais alors pourquoi me parler de GAWR qui ne serait qu’une scorie ?

    En passant, quand vous aurez des problèmes de temps de réponse lors des accès aux tables : faire des EXPLAIN et voir la situation en ce qui concerne les index, boulot du DBA... Mais chaque chose en son temps.

    Concernant la vue MOTEUR_COMPOSANT_V dédiée aux moteurs, j’ai programmé le trigger [MOTEUR_COMPOSANT_INSERT_TR dédié aux inserts par la vue. Quelques inserts :

    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, DateAchat, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT 's01', '2012-07-01', 'Perkins', 'modèle 1', 40, 60, 80
    ;
    
    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, DateAchat, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT 's02', '2011-04-01', 'Vendeuvre', 'modèle 17', 20, 25, 29
    ;
    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, DateAchat, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT 's03', '2010-04-01', 'Renault', 'modèle t', 30, 31, 36 
    ;
    -------------------------------
    -- Pas de date d'achat
    ------------------------------
    
    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT '47290150027466', 'Detroit', 'DD15 14.8L', 475, 1800, 1850 
    ;
    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, DateAchat, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT '56789012345678', '2010-07-02', 'Detroit', 'DD16 14.8L', 480, 1900, 1852 
    ;
    INSERT INTO MOTEUR_COMPOSANT_V
        (NumeroSerie, DateAchat, Fabriquant, Modele, MaxHorsePower, MoteurMaxRPM, MoteurMaxTorque)
        SELECT '78901234567890', '2010-07-03', 'Detroit', 'DD17 14.8L', 476, 1950, 1853 
    ;
    
    

    Si vous pouvez tester de votre cô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.
      2  0

  16. #156
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Citation Envoyé par fsmrel Voir le message
    Dans la base DZINDZIO_TRUCKS_MANAGEMENT, il y a la colonne GVWR : très bien, c’est celle que j’utilise aussi, et il y a également la colonne FRGAWR, on est en phase. Mais alors pourquoi me parler de GAWR qui ne serait qu’une scorie ?
    Car ce sont des paramètres très importants sinon essentiels de connaître aussi bien pour un camion que pour une automobile afin de ne jamais dépasser les spécifications du manufacturier.

    Comparez votre table CAMION et la mienne, il y a deux erreurs dans votre Table CAMION. J'avais fait une erreur dans la transcription à l'origine.

    Pour un véhicule, il y a autant de GAWR qu'il y a d'essieux.

    En Amérique du Nord, la majorité des camions sans la remorque, ont 3 essieux, plusieurs en ont 2 et certains en ont 4.

    En ce qui concerne cette base de données, pour mes besoins, GVWR, FRGAWR, 2NDGAWR et 3RDGAWR suffisent mais pour rendre la base de données plus universelle ou pour besoins futures, nous pourrions inclure 4THGAWR et REARGAWR pour inclure deux catégories de camions de plus. ( GVWR ça existe mais 2NDGVWR et 3RDGVWR, ça n'existe pas et ça ne veut rien dire ) J'avais fait une erreur lorsque j'ai écrit la table CAMION et j'ai corrigée ensuite.) Imaginez maintenant si nous utilisons les mesures américaines traduites en anglais et en français ainsi que le système métrique traduit en anglais et en français, il n'y aura plus de fin

    Front GAWR  =  FRGAWR
    Second GAWR =  2NDGAWR
    Third GAWR  =  3RDGAWR
    Forth GAWR  =  4FTGAWR
    Fifth GAWR  =  5THGAWR
    Sixth GAWR  =  6THGAWR
    Rear GAWR   =  REARGAWR
    
    On y perd notre Latin

    Pièce jointe 414609

    Ici il est très difficile de développer un produit universel au Québec car il y a deux langues officielles reconnues par la loi par le gouvernement fédérale mais non reconnues par toutes les provinces. Et bien que le Canada utilise le Système métrique, les États-Unis eux, utilisent le Système américain qui est un peu différent du système impérial. Aux États-Unis, lorsqu'ils parle de MPG, ils parlent de Miles par Gallon américain alors qu'au Canada nous parlons de Miles par gallon impérial. Un gallon US = 3,78 litres et un gallon impérial = 4,5 litres. Lorsque les camions circulent au Canada, les entreprises utilisent le système métrique mais lorsqu'ils circulent aux États-Unis, elles utilisent le système américain. Il y a beaucoup de confusions.



    The sky is the limit

    Pièce jointe 414570
      1  0

  17. #157
    Expert éminent sénior
    Avatar de fsmrel
    Homme Profil pro
    Spécialiste en bases de données
    Inscrit en
    Septembre 2006
    Messages
    8 001
    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 001
    Points : 30 905
    Points
    30 905
    Billets dans le blog
    16
    Par défaut
    Ave ordigil,


    Citation Envoyé par ordigil Voir le message
    Comparez votre table CAMION et la mienne, il y a deux erreurs dans votre Table CAMION.
    Je suis désolé, j’ai la vue basse, mais je n’aperçois aucune différence structurelle entre la table CAMION de la base de données DZINDZIO_TRUCKS_MANAGEMENT et la table CAMION de la base de données Temp. Merci de me dire (en français et pas avec des émoticônes) quelles sont les différences. Je préfère qu’on soit du mieux possible en phase.
    (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.
      2  0

  18. #158
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Puisque vous utilisez 2NDGVWR et 3RDGVWR et que moi j'utilise 2NDGAWR et 3RDGAWR, je dois corriger toutes les tables VUES dans lesquelles la table CAMION est impliquée.


    Est-ce que vous voyez la différence ????????
      0  0

  19. #159
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    J'ai terminé de corrigé les tables, les vues, les contraints et les triggers
      0  0

  20. #160
    Membre averti Avatar de ordigil
    Homme Profil pro
    Recherche et développement sur la protection de la vie privée.
    Inscrit en
    Juillet 2018
    Messages
    695
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Canada

    Informations professionnelles :
    Activité : Recherche et développement sur la protection de la vie privée.
    Secteur : High Tech - Électronique et micro-électronique

    Informations forums :
    Inscription : Juillet 2018
    Messages : 695
    Points : 379
    Points
    379
    Par défaut
    Citation Envoyé par fsmrel Voir le message
    Ave ordigil,




    Je suis désolé, j’ai la vue basse, mais je n’aperçois aucune différence structurelle entre la table CAMION de la base de données DZINDZIO_TRUCKS_MANAGEMENT et la table CAMION de la base de données Temp. Merci de me dire (en français et pas avec des émoticônes) quelles sont les différences. Je préfère qu’on soit du mieux possible en phase.


    vous utilisez 2NDGVWR et 3RDGVWR et moi j'utilise 2NDGAWR et 3RDGAWR
      0  0

Discussions similaires

  1. Ajout dans une table et relation avec d'autres
    Par climz dans le forum Access
    Réponses: 5
    Dernier message: 12/05/2006, 15h32
  2. Création table et relations
    Par ptitdragon_eric dans le forum Langage SQL
    Réponses: 3
    Dernier message: 10/09/2005, 13h37
  3. table de relation
    Par tanjonaravelson dans le forum PostgreSQL
    Réponses: 1
    Dernier message: 21/06/2005, 18h20
  4. Table de relation et sélection via jointure
    Par 73672 dans le forum Langage SQL
    Réponses: 11
    Dernier message: 09/11/2004, 09h33
  5. Problème avec mes tables de relation...
    Par mmike dans le forum PostgreSQL
    Réponses: 4
    Dernier message: 02/06/2003, 15h16

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