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 :

Erreur suppression stagiaires


Sujet :

Développement SQL Server

  1. #1
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 36
    Points : 4
    Points
    4
    Par défaut Erreur suppression stagiaires
    bonjour mes amis

    aidez moi SVP pour résoudre cette question :

    Supprimer les 3 premiers stagiaires
    Nom : img Erreur.jpg
Affichages : 148
Taille : 85,0 Ko
    je fais ça :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
     
    create proc ex14
    as
    begin
     delete from Stagiaire
     where NumStg in(select top 3 NumStg from Notation group by NumStg order by AVG(note) desc)
    end

  2. #2
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par king_simo Voir le message
    je fais ça :
    Pourquoi avez-vous fait ça ? Que voulez-vous faire exactement ? Supprimer les 3 premiers stagiaires ? Oui, mais selon quelle préséance ?

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  3. #3
    Candidat au Club
    Homme Profil pro
    Développeur informatique
    Inscrit en
    Mai 2014
    Messages
    36
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations professionnelles :
    Activité : Développeur informatique
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Mai 2014
    Messages : 36
    Points : 4
    Points
    4
    Par défaut
    oui , je veux supprimer les 3 premier stagiaire
    mais il arrive l'erreur suivant :

    The DELETE statement conflicted with the REFERENCE constraint "FK__Notation__NumStg__15502E78"

  4. #4
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par king_simo Voir le message
    oui , je veux supprimer les 3 premier stagiaire
    mais il arrive l'erreur suivant :

    The DELETE statement conflicted with the REFERENCE constraint "FK__Notation__NumStg__15502E78"
    L'erreur est tout ce qu'il de normal. En effet, un des premier rôle d'un SGBD est de veiller à respecter les contraintes d'intégrité. Parmi celles-ci, il y a ce qu'on appelle communément les contraintes l'intégrité référentielle ..

    En résumé, la contrainte FK__Notation__NumStg__15502E78" fait que vous ne pouvez pas supprimer un tuple (en l' occurrence un Stagiaire) référencé par un autre tuple (en l'occurrence une Notation).

    Vous devez commencer par supprimer d'abord les Notations rattachées aux 3 stagiaires à supprimer, et ce, avant de supprimer les dits stagiaires.

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  5. #5
    Membre confirmé
    Homme Profil pro
    Développeur Full-stack
    Inscrit en
    Novembre 2010
    Messages
    372
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Côte d'Ivoire

    Informations professionnelles :
    Activité : Développeur Full-stack

    Informations forums :
    Inscription : Novembre 2010
    Messages : 372
    Points : 489
    Points
    489
    Par défaut
    Bonjour,

    Je te conseillerai de changer les propriétés des liaisons avec clés étrangères (partie SPÉCIFICATION INSERT et UPDATE), tu changes la règle de suppression en cascade, de même pour les mise à jour aussi.

    Tu peux aussi le faire en modifiant les tables par code: Pour chaque table participant à la relation et recevant une clé étrangère, tu modifies comme suit:
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
     
    ALTER TABLE [dbo].[Table1]  WITH CHECK ADD  CONSTRAINT [FK_ForeignKey] FOREIGN KEY([CléTable2])
    REFERENCES [dbo].[Table2] ([CléTable2])
    ON UPDATE CASCADE
    ON DELETE CASCADE
    La recherche de la connaissance est une Lumière qui apaise le Cœur.
    Si une réponse vous a été utile , n'oubliez pas de voter en cliquant sur:.

  6. #6
    Membre expérimenté

    Homme Profil pro
    Ingénieur développement logiciels
    Inscrit en
    Septembre 2003
    Messages
    733
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Haute Garonne (Midi Pyrénées)

    Informations professionnelles :
    Activité : Ingénieur développement logiciels
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Septembre 2003
    Messages : 733
    Points : 1 668
    Points
    1 668
    Billets dans le blog
    8
    Par défaut
    Citation Envoyé par Alexandre le Grand Voir le message
    Bonjour,
    Je te conseillerai de changer les propriétés des liaisons avec clés étrangères (partie SPÉCIFICATION INSERT et UPDATE), tu changes la règle de suppression en cascade, de même pour les mise à jour aussi.
    ATTENTION :

    - La clause ON DELETE CASCADE est astucieuse et même séduisante sur le plan purement technique. Mais, cette clause est lourde de conséquence sur le plan fonctionnel (métier).

    - Le développeur ne doit jamais prendre cette initiative (ON DELETE CASCADE ) tout seul, et ce, juste pour contourner je ne sais quel message d'erreur ! Il doit impérativement en référer au Chef de Projet, en lui expliquant bien l'impact réel de cette clause sur les données.

    - D'aucuns décideurs seront peut-être tenté d'utiliser la clause ON DELETE CASCADE pour effacer d'un coup de baguette magique les dettes fournisseur, après suppression du fournisseur, mais rares sont ceux qui recourront un ON DELETE CASCADE pour effacer les créances d'un client après suppression du client !

    A+
    "Une idée mal écrite est une idée fausse !"
    http://hamid-mira.blogspot.com

  7. #7
    Invité
    Invité(e)
    Par défaut
    Un petit retour d'expérience vécue.
    Un développeur voulait purger dans une bd de DEV une table qui contenait des informations non pertinentes à son sens.
    Après le delete et ces cascades, plus de 90% des données avaient disparu.
    L'information m'est revenu quelques jours après et donc, les sauvegardes quotidiennes correctes avaient été supprimmées. (ben oui, au grand désarroi des développeurs, je ne garde pas les sauvegardes pendant 3 mois!)
    Toujours est-il que j'ai du travailler pendant une bonne semaine pour remettre des données et une cohérence acceptable dans la base...

Discussions similaires

  1. [Erreur] Suppression d'une colonne perso
    Par Tybo34 dans le forum SharePoint
    Réponses: 3
    Dernier message: 12/09/2008, 09h36
  2. Erreur suppression d'une colonne
    Par ryan dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 05/11/2007, 22h03
  3. Erreur suppression projet sur Tomcat via Ant
    Par stujava dans le forum Tomcat et TomEE
    Réponses: 1
    Dernier message: 09/08/2007, 10h20
  4. [Continuum] Erreur suppression d'un projet
    Par babalastar dans le forum Intégration Continue
    Réponses: 1
    Dernier message: 12/12/2006, 18h51
  5. ERREUR SUPPRESSION
    Par nabil1 dans le forum Oracle
    Réponses: 5
    Dernier message: 09/04/2006, 19h01

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