From: | Mike Dewhirst <miked(at)dewhirst(dot)com(dot)au> |
---|---|
To: | Zahid Rahman <zahidr1000(at)gmail(dot)com>, pgsql-novice(at)lists(dot)postgresql(dot)org |
Subject: | Re: Renaming sequences |
Date: | 2019-12-18 06:23:02 |
Message-ID: | 711c4f7f-11a7-8065-9906-d2b9dfc1dbb5@dewhirst.com.au |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-novice |
On 18/12/2019 5:03 pm, Zahid Rahman wrote:
>
> If you are referring to a sequence which meets the same definition
> below. That is to say a persistent number generator.
>
> Surely by changing the sequence name then any code using that
> sequence by name will fail. That's from an application developer's view.
>
Yes.
I think I'd better ask on the Django users list.
The fact that it is working with mismatched names probably means it
would stop working if I adjusted them. Django probably reads the
migration record to establish which sequence to use.
Thanks
>
> A *sequence* in*PostgreSQL* is a user-defined schema-bound object that
> generates a*sequence* of integers based on a specified specification.
> To create a *sequence* in *PostgreSQL*, you use the CREATE *SEQUENCE
> *statement.
>
> After a sequence is created, you use the
>
> functions |nextval|, |currval|, and |setval| to operate on the
> sequence. These functions are documented in Section 9.16
> <https://www.postgresql.org/docs/9.5/functions-sequence.html>.
>
> Although you cannot update a sequence directly, you can use a query like:
>
> SELECT * FROMname;
>
>
> On Wed, 18 Dec 2019, 05:33 Mike Dewhirst, <miked(at)dewhirst(dot)com(dot)au
> <mailto:miked(at)dewhirst(dot)com(dot)au>> wrote:
>
> Are there any consequences for renaming sequences to match the
> tables which own them?
>
> In an existing production Django project I have just converted
> auth.user into common.user and company.userprofile into
> common.userprofile.
>
> Having gone through the migration process more or less unscathed
> the original sequences are owned by the renamed tables. Eg
> public.auth_user_id_seq is owned by public.common_user.id
> <http://public.common_user.id>
>
> Everything seems to work fine but my unit tests are playing up and
> error messages are showing the original (and still correct)
> sequence names. It would make much visual sense to me now and
> especially to the future me (or anyone else) if the sequences were
> renamed as well.
>
> I know how I could do it but I just need to know if I should.
>
> Thanks for any advice
>
> Mike
>
From | Date | Subject | |
---|---|---|---|
Next Message | Zahid Rahman | 2019-12-18 07:03:44 | Re: Renaming sequences |
Previous Message | Zahid Rahman | 2019-12-18 06:08:04 | Fwd: Renaming sequences |