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

Requêtes MySQL Discussion :

Gestion des relations avec innoDB


Sujet :

Requêtes MySQL

  1. #1
    Futur Membre du Club
    Profil pro
    Inscrit en
    Mai 2008
    Messages
    11
    Détails du profil
    Informations personnelles :
    Localisation : Canada

    Informations forums :
    Inscription : Mai 2008
    Messages : 11
    Points : 6
    Points
    6
    Par défaut Gestion des relations avec innoDB
    Bonsoir tout le monde,

    voili voilou, apres de nombreuses recherches sur le net, et aucune solution, je viens vers vous pour un problème assez urgent, et que je n'arrive pas à résoudre...

    Je m'explique :p Je voudrais faire appliquer des relations entre plusieurs tables pour faire des suppression en cascade sur les tables de liaison. Le gros probleme, c'est que j'ai 2 champs qui définisse la ligne visée, et il n'y a pas de clé primaire...

    Ce sont 2 tables (products et products_tree), et ces 2 tables sont liés à la table de traduction appelé "products_translations".

    Voila la structure des 3 tables :

    PRODUCTS_TREE
    id
    position
    tag...


    PRODUCTS
    id
    position
    tag
    prix...


    PRODUCTS_TRANSLATIONS
    id
    object_id (contient l'identifiant)
    object_label (contient le nom de la table liée : products ou products_tree)
    value


    Donc voila la requete quand je veux récuperer la traduction d'une ligne venant de la table products_tree :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    SELECT value 
    FROM products_translations 
    WHERE object_id=$product_tree_id AND object_label='products_tree'
    Avec la gestion visuelle des relations sur phpmyadmin, je n'arrive pas à le configurer pour avoir ce type de relation (en récupérant le nom de la table).

    Je viens donc vers vous, je commence à désesperer :p

    Merci beaucoup !

    Bonne soirée tout le monde

    Léo

  2. #2
    Membre expert
    Avatar de Maljuna Kris
    Homme Profil pro
    Retraité
    Inscrit en
    Novembre 2005
    Messages
    2 613
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 72
    Localisation : France, Finistère (Bretagne)

    Informations professionnelles :
    Activité : Retraité
    Secteur : Administration - Collectivité locale

    Informations forums :
    Inscription : Novembre 2005
    Messages : 2 613
    Points : 3 950
    Points
    3 950
    Par défaut
    Saluton,
    Il m'a fallu du temps mais je crois que j'ai enfin compris la logique relationnelle de ces 3 tables.
    En fait, PRODUCTS_TRANSLATIONS.object_id est une clé étrangère "étrange", c'est à dire que sa table de provenance est déterminée par la colonne object_label.
    MySQL ne gère pas ce genre de contrainte d'intégrité à ma connaissance, sauf, peut-être via des triggers.

  3. #3
    Membre éprouvé
    Avatar de Sivrît
    Profil pro
    Inscrit en
    Février 2006
    Messages
    953
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations forums :
    Inscription : Février 2006
    Messages : 953
    Points : 1 249
    Points
    1 249
    Par défaut
    A priori, il faut soit un trigger, soit revoir le schéma pour utiliser deux vraies clefs étrangères.

Discussions similaires

  1. Gestion des transactions avec les composants DOA
    Par lper dans le forum Bases de données
    Réponses: 2
    Dernier message: 01/12/2008, 16h06
  2. Gestion des factures avec interbase
    Par AlexB59 dans le forum Bases de données
    Réponses: 1
    Dernier message: 25/10/2005, 12h05
  3. Gestion des cookies avec Indy 10
    Par membrax dans le forum Web & réseau
    Réponses: 5
    Dernier message: 21/09/2005, 18h44
  4. Réponses: 2
    Dernier message: 22/07/2005, 12h06
  5. Class de gestion des images avec rotation
    Par Johnny Boy dans le forum MFC
    Réponses: 1
    Dernier message: 03/05/2005, 11h54

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