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

MS SQL Server Discussion :

[debutant]delete et contrainte d'integrite


Sujet :

MS SQL Server

  1. #1
    Membre confirmé
    Inscrit en
    Décembre 2002
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 113
    Par défaut [debutant]delete et contrainte d'integrite
    Bonjour a tous,

    Voila je dois realiser un projet sous sql serveur 2000 ou 97 et un langage de script web ...

    j'en suis a l'analyse ...pas facile !

    bref, je vous explique mon stress ...

    je vais avoir une table des personnes et une tables de news
    une personne possede une news ou plusieurs news
    une news est a une personne et une seule

    j'aurai la pk personnes ds la table des news => ok !

    Bon maintenant imaginons que la personne ne fasse plus partie de l'entreprise ...je dois pouvoir la supprimer ! mais bon comme il a des records ds la table news ....ca va m...

    C'est la mon probleme ...
    j'ai pense ds la table personne ajouter un champ statut (1 - 0) qui me permettrait de rendre la personne presente ou non presente !

    Mais bon est ce la bonne solution....?

    Enfin j'aimerais savoir comment je pourrais faire ...pour supprimer cette personne tout en laissant les news ?!


    Je vous remercie et vous souhaite un excellent week end

    ciao

    christophe

  2. #2
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 66
    Par défaut
    Salut,

    Si tu n'as plus aucun intéret à garder des enreg relatifs à une personne je te conseille de supprimer tous les enregistrements relatifs à cette
    personne.
    Inconvénient :
    - Supprimer les tables dans un ordre bien précis.
    Avantage :
    - Base propre

    Maintenant tu souhaites conserver les données
    soit tu fais une table historique dans laquelle tu mets les personnes que tu as supprimé.
    soit ta solution qui me semble tout à fait correcte aussi.


    A+
    Chris

  3. #3
    Membre averti
    Profil pro
    Inscrit en
    Avril 2002
    Messages
    36
    Détails du profil
    Informations personnelles :
    Âge : 43
    Localisation : France, Ille et Vilaine (Bretagne)

    Informations forums :
    Inscription : Avril 2002
    Messages : 36
    Par défaut
    Bonjour,

    Si tu créés relation entre ta table New et personne tu ne pourras pas supprimer la personne sans suprimer la new à cause de ta contrainte d'intégrite.

    De plus si tu supprimes la personne tu n'auras pas les infos de la personne supprimée (Nom, RPénom etc...)

    Autre solution : Faire un archivage des news appartenant à loa personne quand elle s'en va avec les infos de la personne dans la table (NOm, Prenom).



    Perso, je te conseille le champ EtatPersonne varchar(1) avec comme valeurs 'C' Création et 'S' Supprimer
    Voilà si ça peut t-aider ?? Bon courage.......

  4. #4
    Membre confirmé
    Inscrit en
    Décembre 2002
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 113
    Par défaut
    Salut salut Maitre B, YOYOVbSQL,


    Je vous remercie tout deux pour vos posts ....

    Je pense que pour commencer ...je vais rajouter un champ statut ....type bit tout simplement !

    Maintenant, ca m'interesse de faire du delete en cascade ....donc j'essayerai de mettre cela en place dans un futur ....car je pense que c'est la solution la plus pro (propre ;-))!

    En tout cas merci, juste une derniere chose ....je pense que vous avez peut etre un peu plus d'experience que moi ds l'analyse ...

    J'ai cherche un forum ou on discutait de schema relationnelle ...etc ...du modele entite relation ....mais bon n'ai jamais rien trouve malheureusement :-(

    Pourrais je vous poser une p'tite question ....?!

    Je vous remercie ...vraiment

    Une bonne semaine

    Ciao

    Christophe

  5. #5
    Membre confirmé
    Inscrit en
    Juin 2004
    Messages
    66
    Détails du profil
    Informations forums :
    Inscription : Juin 2004
    Messages : 66
    Par défaut
    Citation Envoyé par christophebmx
    Salut salut Maitre B, YOYOVbSQL,
    J'ai cherche un forum ou on discutait de schema relationnelle ...etc ...du modele entite relation ....mais bon n'ai jamais rien trouve malheureusement :-(
    Christophe
    Pose ta question dans le forum : General SGBD
    Je pense que c le meilleur endroit.

    A+
    Chris

  6. #6
    Membre confirmé
    Inscrit en
    Décembre 2002
    Messages
    113
    Détails du profil
    Informations forums :
    Inscription : Décembre 2002
    Messages : 113
    Par défaut
    Je te remercie je vais mettre toutes mes questions au propres et envoyez cela ....de facon a ce que tout soit clair !

    Je te remercie

    ciao

    Christophe

    un bouillonnais

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. [ASIQ] Contraintes d'intégrité
    Par bigourson dans le forum Adaptive Server IQ
    Réponses: 2
    Dernier message: 12/07/2006, 16h09
  2. les contraintes d'integrités
    Par naazih dans le forum Langage SQL
    Réponses: 3
    Dernier message: 23/05/2006, 13h59
  3. Contrainte d'integrité
    Par slclinsearch dans le forum Access
    Réponses: 4
    Dernier message: 13/01/2006, 18h05
  4. [debutant]detection des contraintes
    Par jeff_13 dans le forum PostgreSQL
    Réponses: 2
    Dernier message: 25/02/2005, 11h01
  5. Pb contrainte d'integrité
    Par goulhasch dans le forum MS SQL Server
    Réponses: 2
    Dernier message: 03/02/2005, 15h36

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