Re: Contrainte d'exclusion.

From: Alain Benard <alain(dot)benard(at)nancy(dot)inra(dot)fr>
To: pgsql-fr-generale(at)postgresql(dot)org
Subject: Re: Contrainte d'exclusion.
Date: 2014-02-11 16:27:15
Message-ID: 52FA4F63.9030708@nancy.inra.fr
Views: Whole Thread | Raw Message | Download mbox | Resend email
Thread:
Lists: pgsql-fr-generale

Merci bien.

Le 11/02/2014 17:12, Guillaume Lelarge a écrit :
> On Tue, 2014-02-11 at 16:57 +0100, Alain Benard wrote:
>> Bonjour,
>> je souhaite réaliser une contrainte d'exclusion pour interdire par
>> exemple que 2 personnes réservent un même objet au même moment.
>> En premier lieu j'ai une table 'matable' avec un champ 'champ_periode'
>> de type daterange
>> Je positionne la contrainte suivante
>>
>> ALTER TABLE matable
>> ADD CONSTRAINT contrainte_periode
>> EXCLUDE USING gist (champ_periode WITH &&);
>>
>> C'est syntaxiquement correct et avec cette contrainte il ne peut plus y
>> avoir aucun chevauchement de période de réservation (tout objet ou toute
>> personne confondue) ce qui n'est pas vraiment mon besoin. Ce que je veux
>> c'est en plus la prise en compte de l'identifiant d'une personne (champ
>> de type integer).
>> Je positionne donc la contrainte suivante
>>
>> ALTER TABLE matable
>> ADD CONSTRAINT contrainte_periode
>> EXCLUDE USING gist (
>> id_personne WITH = ,
>> champ_periode WITH &&);
>>
>> J'obtiens les messages suivants :
>> ERROR: data type integer has no default operator class for access
>> method "gist"
>> HINT: You must specify an operator class for the index or define a
>> default operator class for the data type.
>>
>> J'ai pourtant vu ce type d'exemple à plusieurs reprise dans mes
>> recherches sur le web et je ne sais pas quoi utiliser comme syntaxe pour
>> arriver à mes fins.
> Vous devez installer l'extension btree_gist pour cela.
>
>

Attachment Content-Type Size
alain_benard.vcf text/x-vcard 304 bytes
unknown_filename text/plain 76 bytes

In response to

Responses

Browse pgsql-fr-generale by date

  From Date Subject
Next Message Pierre BOIZOT 2014-02-13 10:28:21 Relation shared_buffers - Checkpoint
Previous Message Guillaume Lelarge 2014-02-11 16:12:17 Re: Contrainte d'exclusion.