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

Oracle Discussion :

Unicité des enregistrement à l'aide de la condition "ET"


Sujet :

Oracle

  1. #1
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 30
    Points : 17
    Points
    17
    Par défaut Unicité des enregistrement à l'aide de la condition "ET"
    Bonjour,
    Je voudrai savoir si c'est possible d'introduire une condition d'unicité utilisant la condition logique "ET". J'explique :

    par exemple :
    Si on a le même "ID", avant de rejeter l'enregistrement, je veux que le SGBD vérifie le champs "DATE" aussi. S'il trouve qu'on a un meme ID, mais la DAte diffère, il doit pas rejeter la ligne correspondante.

    Comment faire pour introduire une condition pareille ?
    Merci d'avance

  2. #2
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 74
    Points : 95
    Points
    95
    Par défaut
    Ca dépend où tu veux mettre ta condition.
    Si c'est via une contrainte d'unicité (Unique Key par exemple), alors il suffit de créer une contrainte composée de ton id et de ta date (ID,DATE).

  3. #3
    Membre chevronné Avatar de Garuda
    Homme Profil pro
    Chef de projet / Urbaniste SI
    Inscrit en
    Juin 2007
    Messages
    1 285
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France, Vaucluse (Provence Alpes Côte d'Azur)

    Informations professionnelles :
    Activité : Chef de projet / Urbaniste SI
    Secteur : Bâtiment

    Informations forums :
    Inscription : Juin 2007
    Messages : 1 285
    Points : 2 071
    Points
    2 071
    Par défaut
    Si j'ai bien compris, il ne peut y avoir qu'un seul enregistrement avec le meme id ?
    Si oui

    ID ->primary key
    + trigger qui empeche le changement de date

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    ON UPDATE FOR EACH ROW
    IF :NEW.date<>:OLD.DATE THEN
     raise....
    END IF;
    Garuda गरूड
    Brahmâ la Guerre et Vishnu la Paix

    Oracle 12C R2 - Forms11GR2 - Toad 12 - sharePoint 2010

  4. #4
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    merci pour vos réponses.
    Moi ce que je cherche c'est que le SGBD (Oracle) charge une ligne qui a un ID qui existe déjà à condition que cet enregistrement a une date différente.
    Exemple :
    ID Date
    123 05/06/2007

    je ve que le SGBD laisse passer par exemple la ligne suivante :

    123 09/06/2008

    qui le meme ID mais pas la meme date.

    Comment faire ?

  5. #5
    Rédacteur

    Homme Profil pro
    Développeur et DBA Oracle
    Inscrit en
    Octobre 2006
    Messages
    878
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Algérie

    Informations professionnelles :
    Activité : Développeur et DBA Oracle

    Informations forums :
    Inscription : Octobre 2006
    Messages : 878
    Points : 1 197
    Points
    1 197
    Par défaut
    Salut,

    Je te propose de mettre id+date comme clé primaire.

  6. #6
    Membre régulier
    Profil pro
    Inscrit en
    Octobre 2006
    Messages
    74
    Détails du profil
    Informations personnelles :
    Âge : 51
    Localisation : France, Haute Vienne (Limousin)

    Informations forums :
    Inscription : Octobre 2006
    Messages : 74
    Points : 95
    Points
    95
    Par défaut
    Il me semblait bien que c'était la meilleure solution !

  7. #7
    Membre à l'essai
    Inscrit en
    Mai 2007
    Messages
    30
    Détails du profil
    Informations forums :
    Inscription : Mai 2007
    Messages : 30
    Points : 17
    Points
    17
    Par défaut
    effectivement c'est la bonne.

    MERCI à vous tous

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

Discussions similaires

  1. [Toutes versions] USERFORM - Créer, Consulter, Modifier et Supprimer des enregistrements à l'aide d'un formulaire.
    Par Philippe Tulliez dans le forum Contribuez
    Réponses: 110
    Dernier message: 04/08/2022, 01h24
  2. [AC-2000] Rechercher des enregistrements à l'aide d'une barre de recherche
    Par Theo64 dans le forum Requêtes et SQL.
    Réponses: 4
    Dernier message: 16/05/2012, 13h53
  3. modifier des enregistrement d'un champs si condition vrai
    Par myriame dans le forum VBA Access
    Réponses: 8
    Dernier message: 31/05/2011, 09h01
  4. Petit Calcul à l'aide des enregistrements précédents
    Par laurentcr dans le forum Access
    Réponses: 5
    Dernier message: 11/09/2006, 13h41
  5. Réponses: 2
    Dernier message: 28/06/2006, 08h55

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