Re: Postgresql partitioning

Поиск
Список
Период
Сортировка
От Ram Ravichandran
Тема Re: Postgresql partitioning
Дата
Msg-id c8cd6fbb0803212000t1e6f704oe5c8ba5dce8f4f67@mail.gmail.com
обсуждение исходный текст
Ответ на Re: Postgresql partitioning  (Erik Jones <erik@myemma.com>)
Ответы Re: Postgresql partitioning  (Reece Hart <reece@harts.net>)
Список pgsql-general
Thanks for the quick response. And I assume that primary key
uniqueness is not tested across tables. Right?

Thanks,
Ram

On Fri, Mar 21, 2008 at 8:59 PM, Erik Jones <erik@myemma.com> wrote:
> On Mar 21, 2008, at 7:15 PM, Ram Ravichandran wrote:
>
>  > Hey,
>  >
>  > Suppose I have a table with the following fields:
>  >
>  > CREATE TABLE distributors (
>  >     id     DECIMAL(3) PRIMARY KEY,
>  >     name    VARCHAR(40),
>  >     status INTEGER
>  > );
>  >
>  > I would ike to partition this table based on status which can be
>  > [0,1,2,3,4].
>  >
>  > I was wondering if the records can change their status. i.e. If I did
>  > UPDATE distributors SET status = 4 WHERE id = 231122;
>  >
>  > would POSTGRESQL automatically change the record from the current
>  > partition (say partition where status = 3) to the partition where
>  > status = 4?
>
>  No.  Assuming you have CHECK constraints on you partition tables and
>  constraint_exclusion=on postgres will emit an error on an update like
>  that.
>
>
>  > Or would I have to explicitly delete it from one partition table, and
>  > reinsert it in the other?
>
>  Yes.  Also, note that this can't be done in an ON UPDATE trigger as
>  CHECK constraints are checked before any triggers are run.
>
>  Erik Jones
>
>  DBA | Emma(R)
>  erik@myemma.com
>  800.595.4401 or 615.292.5888
>  615.292.0777 (fax)
>
>  Emma helps organizations everywhere communicate & market in style.
>  Visit us online at http://www.myemma.com
>
>
>
>

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

Предыдущее
От: "Postgres User"
Дата:
Сообщение: Re: Trigger transactions
Следующее
От: "Jeff Williams"
Дата:
Сообщение: Installing on Windows without using msi Installer