Re: UPDATE OR REPLACE?

Поиск
Список
Период
Сортировка
От Mike Sofen
Тема Re: UPDATE OR REPLACE?
Дата
Msg-id 041f01d2044b$313bd9f0$93b38dd0$@runbox.com
обсуждение исходный текст
Ответ на Re: UPDATE OR REPLACE?  (Michael Paquier <michael.paquier@gmail.com>)
Ответы Re: UPDATE OR REPLACE?  ("dandl" <david@andl.org>)
Список pgsql-general
On Thu, Sep 1, 2016 at 12:10 PM, dandl <david@andl.org> wrote:
> Sqlite has options to handle an update that causes a duplicate key. Is
> there anything similar in Postgres?
> This is not an UPSERT. The scenario is an UPDATE that changes some key
> field so that there is now a duplicate key. In Sqlite this handled as:
> UPDATE OR IGNORE table SET <etc>
> UPDATE OR REPLACE table SET <etc>
>
> And so on
>
> See https://www.sqlite.org/lang_update.html.
>
> Can Postgres do this?

I would propose that this effectively violates referential integrity and shouldn't be a valid design pattern.

In my mind primary keys are supposed to be static, stable, non-volatile...aka predictable.  It feels like an alien
invadingmy schema, to contemplate such an activity.  I hope PG never supports that. 

Postgres allows developers incredible freedom to do really crazy things.  That doesn't mean that they should.

Mike Sofen (USA)



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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: Array element foreign keys
Следующее
От: Igor Neyman
Дата:
Сообщение: Re: Clustered index to preserve data locality in a multitenant application?