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

MySQL Discussion :

Traduction de généralité/spécificités


Sujet :

MySQL

Vue hybride

Message précédent Message précédent   Message suivant Message suivant
  1. #1
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 99
    Par défaut Traduction de généralité/spécificités
    Bonjour à tous,
    J'ai développé un site de demande de travaux qui fait appel à une base mysql.
    Suite à une évolution que l'on me demande je me rend compte que j'ai un problème dans ma conception.
    Il y avait au début 8 types de travaux avec une dizaine de champs similaires et 4 ou 5 champs particuliers en fonction du type.
    --> Je n'ai donc fait qu'une seul table dans laquelle seul les champs particuliers liés au type de demande sont renseignés (il y a donc énormément de champ vides).
    Aujourd'hui on me demande d'ajouter des types de travaux avec d'autres champs spécifiques, et la table va dépasser les 100 champs (colonnes).

    Dans le modèle conceptuel, je serais tenté de résoudre le problème à l'aide d'un héritage avec une première table dans laquelle je stocke les 10 champs communs puis une table par type de travaux avec les champs spécifiques.
    Mais voila, je ne trouve pas la traduction en sql de cette notion généralité/spécialisation.
    L'exemple simple le plus parlant pour moi est celui de l'article, qui en fonction de son type (vêtement, alimentaire, hifi) va avoir différentes informations liées, voir différents traitements.

    Pouvez-vous m'indiquer, de manière simple (le mieux serait en table, id et liens) comment traduire cette notion en SQL?
    Je joins le script de creation de base SQL si je conserve une table unique.
    J'utilise mysql 5.0.18.

    D'avance merci.
    Fichiers attachés Fichiers attachés

  2. #2
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Lisez l'article que j'ai écrit à ce sujet :
    http://sqlpro.developpez.com/cours/m...tion/heritage/

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  3. #3
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 99
    Par défaut
    J'avais lu cet article, mais j'espérais effectivement qu'il y ai une autre solution, car pour l'instant je ne maitrise pas l'utilisation des Triggers et MySQL en version 5.0.18 n'a pas l'air totalement opérationnel avec ce mode de fonctionnement...
    En tous cas, merci pour ta réponse.

  4. #4
    Rédacteur

    Avatar de SQLpro
    Homme Profil pro
    Expert bases de données / SQL / MS SQL Server / Postgresql
    Inscrit en
    Mai 2002
    Messages
    22 010
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Var (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Expert bases de données / SQL / MS SQL Server / Postgresql
    Secteur : Conseil

    Informations forums :
    Inscription : Mai 2002
    Messages : 22 010
    Billets dans le blog
    6
    Par défaut
    Pourquoi utiliser un outil qui ne correspond pas à vos attentes ? Soit vous ne faites pas ce modèle, sinon vous passez à un autre SGBDR. Par exemple PostGreSQL, qui plus est se trouve totalement gratuit alors qu'avec MySQL produit d'une entreprise commerciale, il vous faut payer l'utilisation par un moyen ou un autre : soit en code soit en licences.

    A +
    Frédéric Brouard - SQLpro - ARCHITECTE DE DONNÉES - expert SGBDR et langage SQL
    Le site sur les SGBD relationnels et le langage SQL: http://sqlpro.developpez.com/
    Blog SQL, SQL Server, SGBDR : http://blog.developpez.com/sqlpro
    Expert Microsoft SQL Server - M.V.P. (Most valuable Professional) MS Corp.
    Entreprise SQL SPOT : modélisation, conseils, audit, optimisation, formation...
    * * * * * Expertise SQL Server : http://mssqlserver.fr/ * * * * *

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2008
    Messages
    99
    Détails du profil
    Informations forums :
    Inscription : Juin 2008
    Messages : 99
    Par défaut
    Nous nous posons effectivement la question de changer de SGBDR, le problème étant que nous serions obligés de migrer une dizaine de bases existantes, ce qui serait très couteux en temps et risqué.

    Pour en revenir aux Triggers et à notre modèle, en partant du principe que nous arrivons à les implémenter sur MySQL, nous avons une 20n de tables qui sont concernées par l'héritage (en parallèle de ton exemple, cela correspondrait à une 20n de type de véhicules).
    --> Est-ce que les Triggers seraient toujours la bonne solution?

    Merci pour ton aide.

Discussions similaires

  1. [Traduction] probleme de declaration
    Par Mercilius dans le forum Langage
    Réponses: 3
    Dernier message: 03/04/2003, 16h16
  2. TRaduction C++ => Delphi VOID ??
    Par escafr dans le forum Langage
    Réponses: 6
    Dernier message: 20/02/2003, 10h39
  3. traduction en delphi "reinterpreted cast"
    Par Chupakabra dans le forum Langage
    Réponses: 3
    Dernier message: 13/02/2003, 15h49
  4. Traduction
    Par PierDIDI dans le forum Composants VCL
    Réponses: 3
    Dernier message: 17/09/2002, 23h43
  5. Changement de langue dynamique (D6 et outils de traduction)
    Par agon dans le forum Composants VCL
    Réponses: 4
    Dernier message: 17/09/2002, 16h15

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