Thread: sequence rename?
So I am renaming a table, and the last stumbling block that I've met is the associated sequence. I tried the commands suggested @ http://mailman.fastxs.net/pipermail/dbmail-dev/2004-August/004307.html ie: CREATE SEQUENCE $newseq SELECT setval('$newseq', max($column)) FROM $table ALTER TABLE $table ALTER COLUMN $column SET DEFAULT nextval('$newseq'::text) DROP SEQUENCE $oldseq but when trying to perform the DROP SEQUENCE (psql), i get a message like: ERROR: Cannot drop sequence $oldseq because table $table column $column requires it You may drop table $table column $column instead After that, I tried the query suggested here: http://www.commandprompt.com/ppbook/index.lxp?lxpwrap=x14316%2ehtm#REMOVINGASEQUENCE (example 7-34) And it came back empty. What am I doing wrong? when i \d $table, it shows no such dependency. Is there another way to pull this off? thanks ben ps -- please cc responses directly to me, since i'm not a subscriber. _______________________________ Do you Yahoo!? Express yourself with Y! Messenger! Free. Download now. http://messenger.yahoo.com
On Fri, Oct 01, 2004 at 01:17:38PM -0700, ben f wrote: > So I am renaming a table, and the last stumbling block > that I've met is the associated sequence. I tried the > commands suggested @ > > http://mailman.fastxs.net/pipermail/dbmail-dev/2004-August/004307.html > > ie: > > CREATE SEQUENCE $newseq > SELECT setval('$newseq', max($column)) FROM $table > ALTER TABLE $table ALTER COLUMN $column SET DEFAULT > nextval('$newseq'::text) > DROP SEQUENCE $oldseq How about ALTER TABLE $oldseq RENAME TO $newseq; -- Alvaro Herrera (<alvherre[a]dcc.uchile.cl>) "Y eso te lo doy firmado con mis lágrimas" (Fiebre del Loco)