|
Publicité ' | |||||||||||||||||||||||
|
|
#1 |
|
Invité régulier
![]() Inscription : mai 2007 Messages : 30 ![]() |
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 |
|
|
00
|
|
|
#2 |
|
Membre régulier
![]() Inscription : octobre 2006 Messages : 73 ![]() |
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). |
|
|
00
|
|
|
#3 | ||
|
Membre Expert
![]() Philippe CHIRCOPChef de projet Inscription : juin 2007 Messages : 1 109 ![]() |
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 :
__________________
Garuda गरूड Brahmâ la Guerre et Vishnu la Paix Oracle 10.2.0.4 - Forms6i patch 17 - Toad 11.1 - sharePoint 2010 |
||
|
|
00
|
|
|
#4 |
|
Invité régulier
![]() Inscription : mai 2007 Messages : 30 ![]() |
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 ? |
|
|
00
|
|
|
#5 |
![]() Salim Développeur et DBA Oracle Inscription : octobre 2006 Messages : 872 ![]() |
Salut,
Je te propose de mettre id+date comme clé primaire. |
|
|
00
|
|
|
#6 |
|
Membre régulier
![]() Inscription : octobre 2006 Messages : 73 ![]() |
Il me semblait bien que c'était la meilleure solution !
|
|
|
00
|
|
|
#7 |
|
Invité régulier
![]() Inscription : mai 2007 Messages : 30 ![]() |
effectivement c'est la bonne.
MERCI à vous tous |
|
|
00
|
Copyright © 2000-2012 - www.developpez.com