Using EXCLUDE in 9.0 with <> operator ...

Поиск
Список
Период
Сортировка
От Derek Harland
Тема Using EXCLUDE in 9.0 with <> operator ...
Дата
Msg-id 16E1A4F3-6335-4E59-BC88-DA101D528E5C@chocolate-fish.com
обсуждение исходный текст
Ответы Re: Using EXCLUDE in 9.0 with <> operator ...  (Jeff Davis <pgsql@j-davis.com>)
Список pgsql-general
Hallo all,

I have a question about Exclusion constraints in 9.0:
* Lets say I have a table  with two columns X and Y (of type varchar or int)
* Is there any way I can add add an EXCLUDE constraint that says, for each value of X the values of Y must be the same.
* So the following rows are ok:

  X | Y
  ----
  A , 1
  A , 1
  B , 1
  B , 1
  C , 2
  C , 2

But adding

  A , 3

should fail, as everything with value X = "A" should have the same value as existing data (where Y = 1)

Theoretically the following would be nice if it worked

  EXCLUDE (X WITH =, Y WITH <>)

but it complains that

  ERROR:  operator <>(text,text) is not a member of operator family "text_ops"

because the Btree index method only allows = in an exclude constraint.  Or am I missing a simpler way of doing this?
(withouthaving to create and then foreign key to another table, which is obviously a possibility) 

des.



В списке pgsql-general по дате отправления:

Предыдущее
От: David Boreham
Дата:
Сообщение: Re: Why facebook used mysql ?
Следующее
От: Jeff Davis
Дата:
Сообщение: Re: Using EXCLUDE in 9.0 with <> operator ...