Re: alter table schema, default sequences stay the same

Поиск
Список
Период
Сортировка
От Tom Lane
Тема Re: alter table schema, default sequences stay the same
Дата
Msg-id 18513.1277823072@sss.pgh.pa.us
обсуждение исходный текст
Ответ на alter table schema, default sequences stay the same  (Sim Zacks <sim@compulab.co.il>)
Ответы Re: alter table schema, default sequences stay the same  (Sim Zacks <sim@compulab.co.il>)
Список pgsql-general
Sim Zacks <sim@compulab.co.il> writes:
>> id integer NOT NULL DEFAULT
>> nextval(('public.tblname_id_seq'::text)::regclass)

> Shouldn't this change automatically as well?

It would have changed automatically if the default expression were what
it's supposed to be, namely nextval('sequencename'::regclass).  What
you've got there is a text constant, which of course is static.

I haven't consumed enough caffeine today to recall the details, but
I think you could have ended up with default expressions like the above
if the database had been dumped and reloaded from 8.0 or earlier.
nextval(regclass) was introduced in 8.1 precisely to solve this type
of problem.

> Is there an easy way to modify all the default values now?

Not especially :-(.  You're going to need to run around and change them
all to the right name.  Be sure to lose the ::text bit while at it,
so it works right the next time.

            regards, tom lane

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

Предыдущее
От: erobles
Дата:
Сообщение: Re: Fwd: Re: Weird trouble with select
Следующее
От: Jacqui Caren-home
Дата:
Сообщение: Re: Migrating from MySQL