Re: Code to automatically refresh sequences after loading data?

Поиск
Список
Период
Сортировка
От Ross J. Reedstrom
Тема Re: Code to automatically refresh sequences after loading data?
Дата
Msg-id 20011029171627.B24888@rice.edu
обсуждение исходный текст
Ответ на Re: Code to automatically refresh sequences after loading data?  ("Ross J. Reedstrom" <reedstrm@rice.edu>)
Ответы Time Zones and Brain Damage :)  (Brian McCane <bmccane@mccons.net>)
Список pgsql-admin
On Mon, Oct 29, 2001 at 01:18:15PM -0600, Ross J. Reedstrom wrote:

Need to fix that: I was short a right paren:

select 'SELECT setval(''"'||cs.relname||'"'', max("'||attname||'"))
FROM "'||c.relname||'";' from pg_class c, pg_class cs, pg_attribute a,
pg_attrdef d where cs.relkind = 'S' and d.adsrc ~ cs.relname and c.oid =
a.attrelid and c.oid = d.adrelid and d.adnum = a.attnum;

now you can do (in psql):

bioinfo=# \t
Showing only tuples.
bioinfo=# select 'SELECT setval(''"'||cs.relname||
'"'', max("'||attname||'")) FROM "'||c.relname||'";'
from pg_class c, pg_class cs, pg_attribute a, pg_attrdef d
where cs.relkind = 'S' and d.adsrc ~ cs.relname
and c.oid = a.attrelid and c.oid = d.adrelid
and d.adnum = a.attnum \g fix-serial.sql

bioinfo=# \i fix-serial.sql
     77

     78

     17

bioinfo=#

i.e. use SQL to generate the SQL into a file, then read the commands back
in from that file.

Note that since this grovels around in systemtables, it can break with version
changes.

Ross

--
Ross Reedstrom, Ph.D.                                 reedstrm@rice.edu
Executive Director                                  phone: 713-348-6166
Gulf Coast Consortium for Bioinformatics              fax: 713-348-6182
Rice University MS-39
Houston, TX 77005

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

Предыдущее
От: Tom Lane
Дата:
Сообщение: Re: corrupt pg_language index
Следующее
От: Manuel Trujillo
Дата:
Сообщение: "bidirectional" communication