Re: Fw: postgresql experts please help
От | Kris Jurka |
---|---|
Тема | Re: Fw: postgresql experts please help |
Дата | |
Msg-id | Pine.BSO.4.64.0710181927161.5403@leary.csoft.net обсуждение исходный текст |
Ответ на | Re: Fw: postgresql experts please help ("Andrei Ilitchev" <andrei.ilitchev@oracle.com>) |
Ответы |
Re: Fw: postgresql experts please help
|
Список | pgsql-jdbc |
On Thu, 18 Oct 2007, Andrei Ilitchev wrote: > IMO this behaviour (if there's existing sequence create another one with the > same name but in some other place) is very wrong - be predictible, throw > exception. This is not true, but it can be confusing. A serial's sequence will always be put in the same schema as the table it's attached to. If another sequence exists with the same name in that schema, it will choose another name for the serial sequence: jurka=# create sequence t2_a_seq; CREATE SEQUENCE jurka=# create table t2 (a serial); NOTICE: CREATE TABLE will create implicit sequence "t2_a_seq1" for serial column "t2.a" CREATE TABLE Notice that it created "t2_a_seq1" to avoid the conflict with the existing "t2_a_seq" sequence. If you've got another sequence with the same name in another schema it does not conflict, but depending on your search_path you can get them mixed up. Both of these problems are solved by using pg_get_serial_sequence, which should perhaps be mentioned more prominently in the documentation. There is definitely a use for keeping multiple tables/sequences with identical names in different schemas and not having them conflict. In fact that's the primary use case for having schemas at all. Kris Jurka
В списке pgsql-jdbc по дате отправления: