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

Développement SQL Server Discussion :

sql server cascade probleme


Sujet :

Développement SQL Server

  1. #1
    Membre très actif
    Inscrit en
    Avril 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 139
    Par défaut sql server cascade probleme
    Bonjour,

    j'ai un probleme de suppression des données :

    j'ai la table Products : productID, ProductName, ProductImageID, Price, Description

    et la table ProductImage : ProductImageID, ProductImage

    J'ai appliqué cascade entre les deux tables.
    quand je supprime une ligne dans la table ProductImage, tous les lignes dans la table product qui portent la meme clé ProductImageID se suppriment automaticament.

    la question est que j'ai besoin du contraire c'est a dire quand je supprime un produit, tous les images de ce produit se suppriment automaticament.

  2. #2
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    Bonjour,

    Heu... et si cette image est également referencée par d'autre produits que celui supprimé, votre cascade va supprimer tous ces produits.

    Donc en supprimant un produit, vous supprimerez tous les produits qui ont la même image...

    Mais je pense que vous avez un problème de conception !

    tous les images de ce produit se suppriment automaticament
    D'après la structure de vos tables, un produit ne peut avoir qu'une seule image ! est-ce bien le cas ?

  3. #3
    Membre très actif
    Inscrit en
    Avril 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 139
    Par défaut sql server cascade probleme
    voila ce que j'ai besoin :

    quand je supprime un produit, toutes les images de ce produits se suppriment, car chaque produits contient plusieurs images.

  4. #4
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut
    car chaque produits contient plusieurs images
    Donc comme je disais, votre modèle est faux.

    est-ce qu'une image peut appartenir aussi à plusieurs produits ?

  5. #5
    Membre très actif
    Inscrit en
    Avril 2010
    Messages
    139
    Détails du profil
    Informations forums :
    Inscription : Avril 2010
    Messages : 139
    Par défaut sql server
    oui une image peut appartenir a plusieurs produits mais avec id different.

  6. #6
    Modérateur

    Profil pro
    dba
    Inscrit en
    Janvier 2010
    Messages
    5 643
    Détails du profil
    Informations personnelles :
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : dba

    Informations forums :
    Inscription : Janvier 2010
    Messages : 5 643
    Par défaut


    voulez-vous dire par la qu'une même photo peut être utilisée pour illustrer plusieurs produits, mais que dans ce cas, cela donne plusieurs lignes dans la table image (pour en fait la même image) ?

    ...

    Toujours est-il qu'avec votre modèle, un produit ne peut avoir qu'une seule image !

  7. #7
    Membre éprouvé

    Profil pro
    Inscrit en
    Juillet 2006
    Messages
    1 448
    Détails du profil
    Informations personnelles :
    Localisation : Belgique

    Informations forums :
    Inscription : Juillet 2006
    Messages : 1 448
    Par défaut
    Vous avez mis la clause "ON DELETE CASCADE" pour la table Products plutôt que la table ProductImage.

    Donc mettez "ON DELETE CASCADE" pour table ProductImage.
    Et pour la table Products mettez "ON DELETE SET NULL"

  8. #8
    Membre Expert Avatar de iberserk
    Homme Profil pro
    Architecte de base de données
    Inscrit en
    Novembre 2004
    Messages
    1 795
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Gironde (Aquitaine)

    Informations professionnelles :
    Activité : Architecte de base de données
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Novembre 2004
    Messages : 1 795
    Par défaut
    Comme aieeeuuuuu je ne comprends pas votre modèle?

    A moins que la colonne ProductImageID de la table product représente l'image par défaut ou principale parmi les images présentent dans la table productImage pour ce product?

  9. #9
    Expert confirmé
    Avatar de mikedavem
    Homme Profil pro
    Administrateur de base de données
    Inscrit en
    Août 2005
    Messages
    5 450
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 46
    Localisation : France, Ain (Rhône Alpes)

    Informations professionnelles :
    Activité : Administrateur de base de données
    Secteur : Distribution

    Informations forums :
    Inscription : Août 2005
    Messages : 5 450
    Par défaut
    Si un produit peut avoir plusieurs images et qu'une image peut appartenir à plusieurs produits alors vous êtes dans une relation de type n-n et il manque une entité association entre les entités produits et images.

    Est ce que vous pouvez nous fournir votre modèle ?

    ++

Discussions similaires

  1. Réponses: 2
    Dernier message: 27/07/2006, 14h41
  2. [SQL SERVER 2005] Probleme variable local
    Par nashouille dans le forum MS SQL Server
    Réponses: 1
    Dernier message: 09/05/2006, 11h16
  3. [SQL Server express] probleme de connection
    Par nahzhir dans le forum MS SQL Server
    Réponses: 4
    Dernier message: 07/04/2006, 17h57
  4. Sql Server Express - Probleme index unique et valeurs null
    Par Fayoul dans le forum MS SQL Server
    Réponses: 6
    Dernier message: 17/02/2006, 17h22
  5. [SQL Server] Petit probleme de champ
    Par Diablo_22 dans le forum Langage SQL
    Réponses: 2
    Dernier message: 21/06/2005, 11h05

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